Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 292951
b: refs/heads/master
c: a6fe35c
h: refs/heads/master
i:
  292949: 432ceb1
  292947: 693dc89
  292943: fff6b43
v: v3
  • Loading branch information
Arun Easi authored and James Bottomley committed Feb 19, 2012
1 parent 8ea2d28 commit c65b9cb
Show file tree
Hide file tree
Showing 2 changed files with 18 additions and 12 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: dafdf8923fbd298cc7bd1ec00aaa69b8a5ceced0
refs/heads/master: a6fe35c052c4fdd1e8e21251f14eea0bd4bbd25b
28 changes: 17 additions & 11 deletions trunk/drivers/scsi/qla2xxx/qla_isr.c
Original file line number Diff line number Diff line change
Expand Up @@ -1883,28 +1883,34 @@ qla2x00_error_entry(scsi_qla_host_t *vha, struct rsp_que *rsp, sts_entry_t *pkt)
struct qla_hw_data *ha = vha->hw;
const char func[] = "ERROR-IOCB";
uint16_t que = MSW(pkt->handle);
struct req_que *req = ha->req_q_map[que];
struct req_que *req = NULL;
int res = DID_ERROR << 16;

ql_dbg(ql_dbg_async, vha, 0x502a,
"type of error status in response: 0x%x\n", pkt->entry_status);

if (que >= ha->max_req_queues || !ha->req_q_map[que])
goto fatal;

req = ha->req_q_map[que];

if (pkt->entry_status & RF_BUSY)
res = DID_BUS_BUSY << 16;

sp = qla2x00_get_sp_from_handle(vha, func, req, pkt);
if (sp)
if (sp) {
sp->done(ha, sp, res);
else {
ql_log(ql_log_warn, vha, 0x5030,
"Error entry - invalid handle.\n");

if (IS_QLA82XX(ha))
set_bit(FCOE_CTX_RESET_NEEDED, &vha->dpc_flags);
else
set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags);
qla2xxx_wake_dpc(vha);
return;
}
fatal:
ql_log(ql_log_warn, vha, 0x5030,
"Error entry - invalid handle/queue.\n");

if (IS_QLA82XX(ha))
set_bit(FCOE_CTX_RESET_NEEDED, &vha->dpc_flags);
else
set_bit(ISP_ABORT_NEEDED, &vha->dpc_flags);
qla2xxx_wake_dpc(vha);
}

/**
Expand Down

0 comments on commit c65b9cb

Please sign in to comment.