module: return error when mod_sysfs_init() failed
Akinobu Mita [Wed, 17 Oct 2007 06:30:27 +0000 (23:30 -0700)]
load_module() returns zero when mod_sysfs_init() fails, then the module
loading will succeed accidentally.

This patch makes load_module() return error correctly in that case.

Acked-by: Greg Kroah-Hartman <gregkh@suse.de>
Acked-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>

kernel/module.c

index c24c3c3..a389b42 100644 (file)
@@ -1881,7 +1881,8 @@ static struct module *load_module(void __user *umod,
        module_unload_init(mod);
 
        /* Initialize kobject, so we can reference it. */
-       if (mod_sysfs_init(mod) != 0)
+       err = mod_sysfs_init(mod);
+       if (err)
                goto cleanup;
 
        /* Set up license info based on the info section */