mirror of
https://github.com/torvalds/linux.git
synced 2026-09-23 05:04:02 +02:00
bus: mhi: host: Fix controller cleanup on EDL sysfs failure
mhi_register_controller() adds the controller device before creating the
optional trigger_edl sysfs file. If sysfs_create_file() fails, the error
path only drops the device reference and leaves the device registered.
Hence, call device_del() in the error path before put_device().
Fixes: 17553ba8e1 ("bus: mhi: host: Add sysfs entry to force device to enter EDL")
Signed-off-by: Yuho Choi <dbgh9129@gmail.com>
Signed-off-by: Manivannan Sadhasivam <manivannan.sadhasivam@oss.qualcomm.com>
This commit is contained in:
parent
5fe63c1bba
commit
0d5b9e6659
|
|
@ -1030,7 +1030,7 @@ int mhi_register_controller(struct mhi_controller *mhi_cntrl,
|
|||
if (mhi_cntrl->edl_trigger) {
|
||||
ret = sysfs_create_file(&mhi_dev->dev.kobj, &dev_attr_trigger_edl.attr);
|
||||
if (ret)
|
||||
goto err_release_dev;
|
||||
goto err_del_dev;
|
||||
}
|
||||
|
||||
mhi_cntrl->mhi_dev = mhi_dev;
|
||||
|
|
@ -1039,6 +1039,8 @@ int mhi_register_controller(struct mhi_controller *mhi_cntrl,
|
|||
|
||||
return 0;
|
||||
|
||||
err_del_dev:
|
||||
device_del(&mhi_dev->dev);
|
||||
err_release_dev:
|
||||
put_device(&mhi_dev->dev);
|
||||
error_setup_irq:
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user