Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 173587
b: refs/heads/master
c: 9ca1d01
h: refs/heads/master
i:
  173585: 9f7c1b5
  173583: 54073fb
v: v3
  • Loading branch information
Andrew Vasquez authored and James Bottomley committed Dec 4, 2009
1 parent f2d6269 commit 0d14112
Show file tree
Hide file tree
Showing 2 changed files with 23 additions and 5 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: f3a0a77e8df2f5c78648ce5971176e610dbc35c0
refs/heads/master: 9ca1d01f7aa035553501a34054ea17e7537eb07e
26 changes: 22 additions & 4 deletions trunk/drivers/scsi/qla2xxx/qla_mbx.c
Original file line number Diff line number Diff line change
Expand Up @@ -2318,6 +2318,7 @@ __qla24xx_issue_tmf(char *name, uint32_t type, struct fc_port *fcport,
{
int rval, rval2;
struct tsk_mgmt_cmd *tsk;
struct sts_entry_24xx *sts;
dma_addr_t tsk_dma;
scsi_qla_host_t *vha;
struct qla_hw_data *ha;
Expand Down Expand Up @@ -2357,20 +2358,37 @@ __qla24xx_issue_tmf(char *name, uint32_t type, struct fc_port *fcport,
sizeof(tsk->p.tsk.lun));
}

sts = &tsk->p.sts;
rval = qla2x00_issue_iocb(vha, tsk, tsk_dma, 0);
if (rval != QLA_SUCCESS) {
DEBUG2_3_11(printk("%s(%ld): failed to issue %s Reset IOCB "
"(%x).\n", __func__, vha->host_no, name, rval));
} else if (tsk->p.sts.entry_status != 0) {
} else if (sts->entry_status != 0) {
DEBUG2_3_11(printk("%s(%ld): failed to complete IOCB "
"-- error status (%x).\n", __func__, vha->host_no,
tsk->p.sts.entry_status));
sts->entry_status));
rval = QLA_FUNCTION_FAILED;
} else if (tsk->p.sts.comp_status !=
} else if (sts->comp_status !=
__constant_cpu_to_le16(CS_COMPLETE)) {
DEBUG2_3_11(printk("%s(%ld): failed to complete IOCB "
"-- completion status (%x).\n", __func__,
vha->host_no, le16_to_cpu(tsk->p.sts.comp_status)));
vha->host_no, le16_to_cpu(sts->comp_status)));
rval = QLA_FUNCTION_FAILED;
} else if (!(le16_to_cpu(sts->scsi_status) &
SS_RESPONSE_INFO_LEN_VALID)) {
DEBUG2_3_11(printk("%s(%ld): failed to complete IOCB "
"-- no response info (%x).\n", __func__, vha->host_no,
le16_to_cpu(sts->scsi_status)));
rval = QLA_FUNCTION_FAILED;
} else if (le32_to_cpu(sts->rsp_data_len) < 4) {
DEBUG2_3_11(printk("%s(%ld): failed to complete IOCB "
"-- not enough response info (%d).\n", __func__,
vha->host_no, le32_to_cpu(sts->rsp_data_len)));
rval = QLA_FUNCTION_FAILED;
} else if (sts->data[3]) {
DEBUG2_3_11(printk("%s(%ld): failed to complete IOCB "
"-- response (%x).\n", __func__,
vha->host_no, sts->data[3]));
rval = QLA_FUNCTION_FAILED;
}

Expand Down

0 comments on commit 0d14112

Please sign in to comment.