提交 7d0e11fb 编写于 作者: J Jeremy Higdon 提交者: James Bottomley

[SCSI] qla1280.c - fix result for device Busy and Queue Full

I discovered that the qla1280 driver does not send the correct status
to the midlayer when it gets Queue Full or Busy from a device.
Signed-off-by: NJeremy Higdon <jeremy@sgi.com>
Signed-off-by: NJames Bottomley <James.Bottomley@SteelEye.com>
上级 d335cc38
......@@ -4038,11 +4038,10 @@ qla1280_status_entry(struct scsi_qla_host *ha, struct response *pkt,
scsi_status, handle);
}
/* Target busy */
if (scsi_status & SS_BUSY_CONDITION &&
scsi_status != SS_RESERVE_CONFLICT) {
CMD_RESULT(cmd) =
DID_BUS_BUSY << 16 | (scsi_status & 0xff);
/* Target busy or queue full */
if ((scsi_status & 0xFF) == SAM_STAT_TASK_SET_FULL ||
(scsi_status & 0xFF) == SAM_STAT_BUSY) {
CMD_RESULT(cmd) = scsi_status & 0xff;
} else {
/* Save ISP completion status */
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册