scsi: be2iscsi: Fix use-after-free during IP updates
authorMike Christie <michael.christie@oracle.com>
Thu, 1 Jul 2021 19:08:40 +0000 (14:08 -0500)
committerMartin K. Petersen <martin.petersen@oracle.com>
Mon, 19 Jul 2021 01:19:14 +0000 (21:19 -0400)
commit7b0ddc1346089b62b45e688e350c9e1c3f7a3ab2
treee9f64cafbac0380d293d9ef23bdcbeb5cf35a898
parent1c0810e79cb3d2c46bb8f2a3e98609de1f009f3e
scsi: be2iscsi: Fix use-after-free during IP updates

This fixes a bug found by Lv Yunlong where, because beiscsi_exec_nemb_cmd()
frees memory for the be_dma_mem cmd(), we can access freed memory when
beiscsi_if_clr_ip()/beiscsi_if_set_ip()'s call to beiscsi_exec_nemb_cmd()
fails and we access the freed req. This fixes the issue by having the
caller free the cmd's memory.

Link: https://lore.kernel.org/r/20210701190840.175120-1-michael.christie@oracle.com
Reported-by: Lv Yunlong <lyl2019@mail.ustc.edu.cn>
Signed-off-by: Mike Christie <michael.christie@oracle.com>
Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
drivers/scsi/be2iscsi/be_mgmt.c