summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMike Christie <michaelc@cs.wisc.edu>2008-12-02 07:32:15 +0100
committerJames Bottomley <James.Bottomley@HansenPartnership.com>2008-12-29 18:24:23 +0100
commitae15f80172d95f978b60d40408353943d5bc099b (patch)
treec520477e90c974e2d165187ba8ee3ad7ec8c7375
parent[SCSI] libiscsi: pass opcode into alloc_pdu callout (diff)
downloadlinux-ae15f80172d95f978b60d40408353943d5bc099b.tar.xz
linux-ae15f80172d95f978b60d40408353943d5bc099b.zip
[SCSI] libiscsi: handle init task failures.
Mgmt setup used to not fail so we did not have to check the return value. Now with cxgb3i it can so this has us pass up a error. Signed-off-by: Mike Christie <michaelc@cs.wisc.edu> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r--drivers/scsi/libiscsi.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/scsi/libiscsi.c b/drivers/scsi/libiscsi.c
index ddf53978f0be..7225b6e2029e 100644
--- a/drivers/scsi/libiscsi.c
+++ b/drivers/scsi/libiscsi.c
@@ -475,8 +475,8 @@ static int iscsi_prep_mgmt_task(struct iscsi_conn *conn,
}
}
- if (session->tt->init_task)
- session->tt->init_task(task);
+ if (session->tt->init_task && session->tt->init_task(task))
+ return -EIO;
if ((hdr->opcode & ISCSI_OPCODE_MASK) == ISCSI_OP_LOGOUT)
session->state = ISCSI_STATE_LOGGING_OUT;