media: vimc: Fix wrong function called when vimc_init() fails
[ Upstream commitf74d3f326d
] In vimc_init(), when platform_driver_register(&vimc_pdrv) fails, platform_driver_unregister(&vimc_pdrv) is wrongly called rather than platform_device_unregister(&vimc_pdev), which causes kernel warning: Unexpected driver unregister! WARNING: CPU: 1 PID: 14517 at drivers/base/driver.c:270 driver_unregister+0x8f/0xb0 RIP: 0010:driver_unregister+0x8f/0xb0 Call Trace: <TASK> vimc_init+0x7d/0x1000 [vimc] do_one_initcall+0xd0/0x4e0 do_init_module+0x1cf/0x6b0 load_module+0x65c2/0x7820 Fixes:4a29b70907
("[media] vimc: Subdevices as modules") Signed-off-by: Chen Zhongjin <chenzhongjin@huawei.com> Signed-off-by: Shuah Khan <skhan@linuxfoundation.org> Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
4518d7cc38
commit
14d85b600b
@ -357,7 +357,7 @@ static int __init vimc_init(void)
|
|||||||
if (ret) {
|
if (ret) {
|
||||||
dev_err(&vimc_pdev.dev,
|
dev_err(&vimc_pdev.dev,
|
||||||
"platform driver registration failed (err=%d)\n", ret);
|
"platform driver registration failed (err=%d)\n", ret);
|
||||||
platform_driver_unregister(&vimc_pdrv);
|
platform_device_unregister(&vimc_pdev);
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user