[PATCH AUTOSEL 5.19 22/64] scsi: iscsi: Fix HW conn removal use after free

7 views
Skip to first unread message

Sasha Levin

unread,
Aug 14, 2022, 11:28:44 AM8/14/22
to linux-...@vger.kernel.org, sta...@vger.kernel.org, Mike Christie, Nilesh Javali, Lee Duncan, Martin K . Petersen, Sasha Levin, cle...@redhat.com, je...@linux.ibm.com, open-...@googlegroups.com, linux...@vger.kernel.org
From: Mike Christie <michael....@oracle.com>

[ Upstream commit c577ab7ba5f3bf9062db8a58b6e89d4fe370447e ]

If qla4xxx doesn't remove the connection before the session, the iSCSI
class tries to remove the connection for it. We were doing a
iscsi_put_conn() in the iter function which is not needed and will result
in a use after free because iscsi_remove_conn() will free the connection.

Link: https://lore.kernel.org/r/20220616222738.5722...@oracle.com
Tested-by: Nilesh Javali <nja...@marvell.com>
Reviewed-by: Lee Duncan <ldu...@suse.com>
Reviewed-by: Nilesh Javali <nja...@marvell.com>
Signed-off-by: Mike Christie <michael....@oracle.com>
Signed-off-by: Martin K. Petersen <martin....@oracle.com>
Signed-off-by: Sasha Levin <sas...@kernel.org>
---
drivers/scsi/scsi_transport_iscsi.c | 2 --
1 file changed, 2 deletions(-)

diff --git a/drivers/scsi/scsi_transport_iscsi.c b/drivers/scsi/scsi_transport_iscsi.c
index 5d21f07456c6..6e73f14b9749 100644
--- a/drivers/scsi/scsi_transport_iscsi.c
+++ b/drivers/scsi/scsi_transport_iscsi.c
@@ -2143,8 +2143,6 @@ static int iscsi_iter_destroy_conn_fn(struct device *dev, void *data)
return 0;

iscsi_remove_conn(iscsi_dev_to_conn(dev));
- iscsi_put_conn(iscsi_dev_to_conn(dev));
-
return 0;
}

--
2.35.1

Sasha Levin

unread,
Aug 14, 2022, 11:31:17 AM8/14/22
to linux-...@vger.kernel.org, sta...@vger.kernel.org, Mike Christie, Nilesh Javali, Lee Duncan, Martin K . Petersen, Sasha Levin, cle...@redhat.com, je...@linux.ibm.com, open-...@googlegroups.com, linux...@vger.kernel.org
Reply all
Reply to author
Forward
0 new messages