mirror of
https://github.com/torvalds/linux.git
synced 2024-11-08 13:11:45 +00:00
[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>
This commit is contained in:
parent
56d7fcfa81
commit
f46e307da9
@ -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;
|
||||
|
Loading…
Reference in New Issue
Block a user