mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-12 05:24:12 +08:00
bb0cd225dd
In efct_device_init(), when efct_scsi_reg_fc_transport() fails,
efct_scsi_tgt_driver_exit() is not called to release memory for
efct_scsi_tgt_driver_init() and causes memleak:
unreferenced object 0xffff8881020ce000 (size 2048):
comm "modprobe", pid 465, jiffies 4294928222 (age 55.872s)
backtrace:
[<0000000021a1ef1b>] kmalloc_trace+0x27/0x110
[<000000004c3ed51c>] target_register_template+0x4fd/0x7b0 [target_core_mod]
[<00000000f3393296>] efct_scsi_tgt_driver_init+0x18/0x50 [efct]
[<00000000115de533>] 0xffffffffc0d90011
[<00000000d608f646>] do_one_initcall+0xd0/0x4e0
[<0000000067828cf1>] do_init_module+0x1cc/0x6a0
...
Fixes:
|
||
---|---|---|
.. | ||
efct_driver.c | ||
efct_driver.h | ||
efct_hw_queues.c | ||
efct_hw.c | ||
efct_hw.h | ||
efct_io.c | ||
efct_io.h | ||
efct_lio.c | ||
efct_lio.h | ||
efct_scsi.c | ||
efct_scsi.h | ||
efct_unsol.c | ||
efct_unsol.h | ||
efct_xport.c | ||
efct_xport.h |