diff --git a/[refs] b/[refs] index e3ee9fcedaf7..5d13cd65d7a6 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: c4ea6fcf5a192dbba54666f308bdace1c278e0c1 +refs/heads/master: 34e4e2fef4c7a2f7699b3d25e48d871d3ac4c3e7 diff --git a/trunk/kernel/module.c b/trunk/kernel/module.c index e6daf9a320a7..5f80478b746d 100644 --- a/trunk/kernel/module.c +++ b/trunk/kernel/module.c @@ -1337,7 +1337,19 @@ int mod_sysfs_setup(struct module *mod, kobject_put(&mod->mkobj.kobj); return err; } -#endif + +static void mod_sysfs_fini(struct module *mod) +{ + kobject_put(&mod->mkobj.kobj); +} + +#else /* CONFIG_SYSFS */ + +static void mod_sysfs_fini(struct module *mod) +{ +} + +#endif /* CONFIG_SYSFS */ static void mod_kobject_remove(struct module *mod) { @@ -1345,7 +1357,7 @@ static void mod_kobject_remove(struct module *mod) module_param_sysfs_remove(mod); kobject_put(mod->mkobj.drivers_dir); kobject_put(mod->holders_dir); - kobject_put(&mod->mkobj.kobj); + mod_sysfs_fini(mod); } /*