firmware: vpd: do not leak kobjects
kobject_del() only unlinks kobject, we need to use kobject_put() to
make sure kobject will go away completely.
Fixes: 049a59db34
("firmware: Google VPD sysfs driver")
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Reviewed-by: Guenter Roeck <groeck@chromium.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
ce57cba37f
commit
2ee1cc7055
@ -244,7 +244,7 @@ static int vpd_section_destroy(struct vpd_section *sec)
|
||||
{
|
||||
if (sec->enabled) {
|
||||
vpd_section_attrib_destroy(sec);
|
||||
kobject_del(sec->kobj);
|
||||
kobject_put(sec->kobj);
|
||||
sysfs_remove_bin_file(vpd_kobj, &sec->bin_attr);
|
||||
kfree(sec->raw_name);
|
||||
iounmap(sec->baseaddr);
|
||||
@ -331,7 +331,7 @@ static void __exit vpd_platform_exit(void)
|
||||
{
|
||||
vpd_section_destroy(&ro_vpd);
|
||||
vpd_section_destroy(&rw_vpd);
|
||||
kobject_del(vpd_kobj);
|
||||
kobject_put(vpd_kobj);
|
||||
}
|
||||
|
||||
module_init(vpd_platform_init);
|
||||
|
Loading…
Reference in New Issue
Block a user