X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=kernel%2Fmodule.c;h=5f80478b746d4eeb1a1dc92040c1e8eacd31bc34;hb=06d5e334a4f8a1f33ebfcdc89c077f4fc85bcffb;hp=e6daf9a320a796648c6b71178a29b25fa48f8815;hpb=c4ea6fcf5a192dbba54666f308bdace1c278e0c1;p=linux-2.6 diff --git a/kernel/module.c b/kernel/module.c index e6daf9a320..5f80478b74 100644 --- a/kernel/module.c +++ b/kernel/module.c @@ -1337,7 +1337,19 @@ out_unreg: 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); } /*