diff options
author | Vasu Dev <vasu.dev@intel.com> | 2010-10-08 20:12:15 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@suse.de> | 2010-10-25 16:11:31 -0400 |
commit | 75eee7252466342e0dfa6675106bcd3955090f67 (patch) | |
tree | 425b0946272f0c5207ad8b02ceba17b942ea9068 | |
parent | 73b4376477672a4336cba5f26ede2e277511ce70 (diff) |
[SCSI] libfc: use DID_TRANSPORT_DISRUPTED while lport not ready
This is per Mile Christie feedback since in this case IO
could get retried for tape devices and therefore DID_REQUEUE
cannot be used, more details in this thread.
http://marc.info/?l=linux-scsi&m=127970522630136&w=2
Signed-off-by: Vasu Dev <vasu.dev@intel.com>
Signed-off-by: Robert Love <robert.w.love@intel.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>
-rw-r--r-- | drivers/scsi/libfc/fc_fcp.c | 6 |
1 files changed, 2 insertions, 4 deletions
diff --git a/drivers/scsi/libfc/fc_fcp.c b/drivers/scsi/libfc/fc_fcp.c index c797f6b48f05..43866e6d0bf2 100644 --- a/drivers/scsi/libfc/fc_fcp.c +++ b/drivers/scsi/libfc/fc_fcp.c | |||
@@ -1971,10 +1971,8 @@ static void fc_io_compl(struct fc_fcp_pkt *fsp) | |||
1971 | break; | 1971 | break; |
1972 | } | 1972 | } |
1973 | 1973 | ||
1974 | if (lport->state != LPORT_ST_READY && fsp->status_code != FC_COMPLETE) { | 1974 | if (lport->state != LPORT_ST_READY && fsp->status_code != FC_COMPLETE) |
1975 | sc_cmd->result = (DID_REQUEUE << 16); | 1975 | sc_cmd->result = (DID_TRANSPORT_DISRUPTED << 16); |
1976 | FC_FCP_DBG(fsp, "Returning DID_REQUEUE to scsi-ml\n"); | ||
1977 | } | ||
1978 | 1976 | ||
1979 | spin_lock_irqsave(&si->scsi_queue_lock, flags); | 1977 | spin_lock_irqsave(&si->scsi_queue_lock, flags); |
1980 | list_del(&fsp->list); | 1978 | list_del(&fsp->list); |