mirror of https://gitee.com/openkylin/linux.git
hwmon: (nct6683) Fix probe unwind paths to properly unregister platform devices
Call platform_device_unregister() rather than platform_device_put() to unregister successfully registered platform devices. Signed-off-by: Axel Lin <axel.lin@ingics.com> Signed-off-by: Guenter Roeck <linux@roeck-us.net>
This commit is contained in:
parent
e8cba3cda4
commit
30190c3c61
|
@ -1389,7 +1389,7 @@ static int __init sensors_nct6683_init(void)
|
|||
pdev[i] = platform_device_alloc(DRVNAME, address);
|
||||
if (!pdev[i]) {
|
||||
err = -ENOMEM;
|
||||
goto exit_device_put;
|
||||
goto exit_device_unregister;
|
||||
}
|
||||
|
||||
err = platform_device_add_data(pdev[i], &sio_data,
|
||||
|
@ -1427,9 +1427,11 @@ static int __init sensors_nct6683_init(void)
|
|||
return 0;
|
||||
|
||||
exit_device_put:
|
||||
for (i = 0; i < ARRAY_SIZE(pdev); i++) {
|
||||
platform_device_put(pdev[i]);
|
||||
exit_device_unregister:
|
||||
while (--i >= 0) {
|
||||
if (pdev[i])
|
||||
platform_device_put(pdev[i]);
|
||||
platform_device_unregister(pdev[i]);
|
||||
}
|
||||
exit_unregister:
|
||||
platform_driver_unregister(&nct6683_driver);
|
||||
|
|
Loading…
Reference in New Issue