<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">ChangeSet 1.1587.5.23, 2004/05/11 13:32:24-07:00, greg@kroah.com

Module attributes: fix build error if CONFIG_MODULE_UNLOAD=n

Thanks to Andrew Morton for pointing this out to me.


 kernel/module.c |   32 ++++++++++++++++----------------
 1 files changed, 16 insertions(+), 16 deletions(-)


diff -Nru a/kernel/module.c b/kernel/module.c
--- a/kernel/module.c	Fri May 14 15:57:16 2004
+++ b/kernel/module.c	Fri May 14 15:57:16 2004
@@ -379,6 +379,22 @@
 }
 #endif /* CONFIG_SMP */
 
+static int add_attribute(struct module *mod, struct kernel_param *kp)
+{
+	struct module_attribute *a;
+	int retval;
+
+	a = &amp;mod-&gt;mkobj-&gt;attr[mod-&gt;mkobj-&gt;num_attributes];
+	a-&gt;attr.name = (char *)kp-&gt;name;
+	a-&gt;attr.owner = mod;
+	a-&gt;attr.mode = kp-&gt;perm;
+	a-&gt;param = kp;
+	retval = sysfs_create_file(&amp;mod-&gt;mkobj-&gt;kobj, &amp;a-&gt;attr);
+	if (!retval)
+		mod-&gt;mkobj-&gt;num_attributes++;
+	return retval;
+}
+
 #ifdef CONFIG_MODULE_UNLOAD
 /* Init the unload section of the module. */
 static void module_unload_init(struct module *mod)
@@ -502,22 +518,6 @@
 	struct stopref sref = { mod, flags, forced };
 
 	return stop_machine_run(__try_stop_module, &amp;sref, NR_CPUS);
-}
-
-static int add_attribute(struct module *mod, struct kernel_param *kp)
-{
-	struct module_attribute *a;
-	int retval;
-
-	a = &amp;mod-&gt;mkobj-&gt;attr[mod-&gt;mkobj-&gt;num_attributes];
-	a-&gt;attr.name = (char *)kp-&gt;name;
-	a-&gt;attr.owner = mod;
-	a-&gt;attr.mode = kp-&gt;perm;
-	a-&gt;param = kp;
-	retval = sysfs_create_file(&amp;mod-&gt;mkobj-&gt;kobj, &amp;a-&gt;attr);
-	if (!retval)
-		mod-&gt;mkobj-&gt;num_attributes++;
-	return retval;
 }
 
 unsigned int module_refcount(struct module *mod)
</pre></body></html>