summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Christie <michael.christie@oracle.com>2021-05-25 21:18:11 +0300
committerMartin K. Petersen <martin.petersen@oracle.com>2021-06-02 08:28:22 +0300
commita1f3486b3b095ed2259d7a1fc021a8b6e72a5365 (patch)
tree0b0045ae0eddcdf3df610fd49f626df83027d9f5
parent99b0603313eecb9b0b99fd2e60bae1e03e6b038b (diff)
downloadlinux-a1f3486b3b095ed2259d7a1fc021a8b6e72a5365.tar.xz
scsi: iscsi: Move pool freeing
This doesn't fix any bugs, but it makes more sense to free the pool after we have removed the session. At that time we know nothing is touching any of the session fields, because all devices have been removed and scans are stopped. Link: https://lore.kernel.org/r/20210525181821.7617-19-michael.christie@oracle.com Reviewed-by: Lee Duncan <lduncan@suse.com> Signed-off-by: Mike Christie <michael.christie@oracle.com> Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
-rw-r--r--drivers/scsi/libiscsi.c3
1 files changed, 1 insertions, 2 deletions
diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c
index e57d6355e7c7..15630f5f2553 100644
--- a/drivers/scsi/libiscsi.c
+++ b/drivers/scsi/libiscsi.c
@@ -3001,10 +3001,9 @@ void iscsi_session_teardown(struct iscsi_cls_session *cls_session)
struct module *owner = cls_session->transport->owner;
struct Scsi_Host *shost = session->host;
- iscsi_pool_free(&session->cmdpool);
-
iscsi_remove_session(cls_session);
+ iscsi_pool_free(&session->cmdpool);
kfree(session->password);
kfree(session->password_in);
kfree(session->username);