linux/drivers/scsi/fcoe
Chen Zhongjin 4155658cee scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails
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>
2022-11-26 00:14:27 +00:00
..
Makefile treewide: Add SPDX license identifier - Makefile/Kconfig 2019-05-21 10:50:46 +02:00
fcoe.c scsi: fcoe: Fix transport not deattached when fcoe_if_init() fails 2022-11-26 00:14:27 +00:00
fcoe.h treewide: Replace GPLv2 boilerplate/reference with SPDX - rule 335 2019-06-05 17:37:06 +02:00
fcoe_ctlr.c treewide: use prandom_u32_max() when possible, part 1 2022-10-11 17:42:55 -06:00
fcoe_sysfs.c scsi: fcoe: Fix possible name leak when device_register() fails 2022-11-26 00:03:10 +00:00
fcoe_transport.c scsi: fcoe: Use per-CPU API to update per-CPU statistics 2022-05-16 21:26:50 -04:00
libfcoe.h