drivers: base: transport_class: fix possible memory leak
authorYang Yingliang <yangyingliang@huawei.com>
Thu, 10 Nov 2022 10:23:07 +0000 (18:23 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Fri, 20 Jan 2023 13:22:50 +0000 (14:22 +0100)
commita86367803838b369fe5486ac18771d14723c258c
tree6ecd035c623d8ce3932cd5b04f6f399a79de1c14
parent0d150f967e8410e1e6712484543eec709356a65d
drivers: base: transport_class: fix possible memory leak

Current some drivers(like iscsi) call transport_register_device()
failed, they don't call transport_destroy_device() to release the
memory allocated in transport_setup_device(), because they don't
know what was done, it should be internal thing to release the
resource in register function. So fix this leak by calling destroy
function inside register function.

Fixes: 1da177e4c3f4 ("Linux-2.6.12-rc2")
Signed-off-by: Yang Yingliang <yangyingliang@huawei.com>
Link: https://lore.kernel.org/r/20221110102307.3492557-1-yangyingliang@huawei.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
include/linux/transport_class.h