diff options
author | Mike Christie <michaelc@cs.wisc.edu> | 2008-08-19 18:45:27 -0500 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-10-13 09:28:49 -0400 |
commit | f46e307da925a7b71a0018c0510cdc6e588b87fc (patch) | |
tree | 7bb9e8af0c33ed8fef53ea98e6ceceff7f9f3528 | |
parent | 56d7fcfa815564b40a1b0ec7a30ea8cb3bc0713e (diff) | |
download | op-kernel-dev-f46e307da925a7b71a0018c0510cdc6e588b87fc.zip op-kernel-dev-f46e307da925a7b71a0018c0510cdc6e588b87fc.tar.gz |
[SCSI] fc class: Add support for new transport errors
If the target is blocked and fast io fail tmo has not fired
then we requeue with DID_TRANSPORT_DISRUPTED. Once that
tmo fires we fail with DID_TRANSPORT_FAILFAST.
v2
- seperate from
"fc class: unblock target after calling terminate callback"
to make it easier to review.
- Add JamesS's ack from list.
v2
- initial patch
Signed-off-by: Mike Christie <michaelc@cs.wisc.edu>
Acked-by: James Smart <James.Smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
-rw-r--r-- | include/scsi/scsi_transport_fc.h | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/include/scsi/scsi_transport_fc.h b/include/scsi/scsi_transport_fc.h index fb8d013..49d8913 100644 --- a/include/scsi/scsi_transport_fc.h +++ b/include/scsi/scsi_transport_fc.h @@ -679,15 +679,15 @@ fc_remote_port_chkready(struct fc_rport *rport) if (rport->roles & FC_PORT_ROLE_FCP_TARGET) result = 0; else if (rport->flags & FC_RPORT_DEVLOSS_PENDING) - result = DID_IMM_RETRY << 16; + result = DID_TRANSPORT_DISRUPTED << 16; else result = DID_NO_CONNECT << 16; break; case FC_PORTSTATE_BLOCKED: if (rport->flags & FC_RPORT_FAST_FAIL_TIMEDOUT) - result = DID_NO_CONNECT << 16; + result = DID_TRANSPORT_FAILFAST << 16; else - result = DID_IMM_RETRY << 16; + result = DID_TRANSPORT_DISRUPTED << 16; break; default: result = DID_NO_CONNECT << 16; |