You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
1.4 KiB
38 lines
1.4 KiB
Dont reference *pdu after it has been freed |
|
|
|
Message-id: <1383729402-27559-3-git-send-email-pbonzini@redhat.com> |
|
Patchwork-id: 55497 |
|
O-Subject: [PATCH 02/11] Dont reference *pdu after it has been freed |
|
Bugzilla: 1026820 |
|
RH-Acked-by: Miroslav Rezanina <mrezanin@redhat.com> |
|
RH-Acked-by: Orit Wasserman <owasserm@redhat.com> |
|
RH-Acked-by: Stefan Hajnoczi <stefanha@redhat.com> |
|
|
|
From: Ronnie Sahlberg <ronniesahlberg@gmail.com> |
|
|
|
(cherry picked from commit 804c5b02112d84c79460e7b2a01fe42f0ca5e687) |
|
--- |
|
lib/iscsi-command.c | 4 ++-- |
|
1 file changed, 2 insertions(+), 2 deletions(-) |
|
diff --git a/lib/iscsi-command.c b/lib/iscsi-command.c |
|
index e52612d..95127a5 100644 |
|
--- a/lib/iscsi-command.c |
|
+++ b/lib/iscsi-command.c |
|
@@ -1636,7 +1636,7 @@ iscsi_scsi_cancel_all_tasks(struct iscsi_context *iscsi) |
|
{ |
|
struct iscsi_pdu *pdu; |
|
|
|
- for (pdu = iscsi->waitpdu; pdu; pdu = pdu->next) { |
|
+ while ((pdu = iscsi->waitpdu)) { |
|
SLIST_REMOVE(&iscsi->waitpdu, pdu); |
|
if ( !(pdu->flags & ISCSI_PDU_NO_CALLBACK)) { |
|
pdu->callback(iscsi, SCSI_STATUS_CANCELLED, NULL, |
|
@@ -1644,7 +1644,7 @@ iscsi_scsi_cancel_all_tasks(struct iscsi_context *iscsi) |
|
} |
|
iscsi_free_pdu(iscsi, pdu); |
|
} |
|
- for (pdu = iscsi->outqueue; pdu; pdu = pdu->next) { |
|
+ while ((pdu = iscsi->outqueue)) { |
|
SLIST_REMOVE(&iscsi->outqueue, pdu); |
|
if ( !(pdu->flags & ISCSI_PDU_NO_CALLBACK)) { |
|
pdu->callback(iscsi, SCSI_STATUS_CANCELLED, NULL,
|
|
|