Skip to content

Commit

Permalink
qemu_fw_cfg: don't leak kobj on init error
Browse files Browse the repository at this point in the history
If platform_driver_register fails, we should
cleanup fw_cfg_top_ko before exiting.

Signed-off-by: Michael S. Tsirkin <[email protected]>
Acked-by: Gabriel Somlo <[email protected]>
  • Loading branch information
mstsirkin committed Apr 7, 2016
1 parent 9735a22 commit e8aabc6
Showing 1 changed file with 7 additions and 1 deletion.
8 changes: 7 additions & 1 deletion drivers/firmware/qemu_fw_cfg.c
Original file line number Diff line number Diff line change
Expand Up @@ -727,12 +727,18 @@ device_param_cb(mmio, &fw_cfg_cmdline_param_ops, NULL, S_IRUSR);

static int __init fw_cfg_sysfs_init(void)
{
int ret;

/* create /sys/firmware/qemu_fw_cfg/ top level directory */
fw_cfg_top_ko = kobject_create_and_add("qemu_fw_cfg", firmware_kobj);
if (!fw_cfg_top_ko)
return -ENOMEM;

return platform_driver_register(&fw_cfg_sysfs_driver);
ret = platform_driver_register(&fw_cfg_sysfs_driver);
if (ret)
fw_cfg_kobj_cleanup(fw_cfg_top_ko);

return ret;
}

static void __exit fw_cfg_sysfs_exit(void)
Expand Down

0 comments on commit e8aabc6

Please sign in to comment.