mirror of
https://github.com/torvalds/linux.git
synced 2026-06-05 13:06:59 +02:00
scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails
[ Upstream commit4155658cee] fcoe_init() calls fcoe_transport_attach(&fcoe_sw_transport), but when fcoe_if_init() fails, &fcoe_sw_transport is not detached and leaves freed &fcoe_sw_transport on fcoe_transports list. This causes panic when reinserting module. BUG: unable to handle page fault for address: fffffbfff82e2213 RIP: 0010:fcoe_transport_attach+0xe1/0x230 [libfcoe] Call Trace: <TASK> do_one_initcall+0xd0/0x4e0 load_module+0x5eee/0x7210 ... Fixes:78a582463c("[SCSI] fcoe: convert fcoe.ko to become an fcoe transport provider driver") Signed-off-by: Chen Zhongjin <chenzhongjin@huawei.com> Link: https://lore.kernel.org/r/20221115092442.133088-1-chenzhongjin@huawei.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
4399a8632e
commit
aef82d16be
|
|
@ -2491,6 +2491,7 @@ static int __init fcoe_init(void)
|
|||
|
||||
out_free:
|
||||
mutex_unlock(&fcoe_config_mutex);
|
||||
fcoe_transport_detach(&fcoe_sw_transport);
|
||||
out_destroy:
|
||||
destroy_workqueue(fcoe_wq);
|
||||
return rc;
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user