fusion: fibre channel: return DID_ERROR for MPI_IOCSTATUS_SCSI_IOC_TERMINATED
Subsystems (2)
PATCH 1/5 fusion: fibre channel: return DID_ERROR for MPI_IOCSTATUS_SCSI_IOC_TERMINATED
A repost of a patch forwarded by Mikael Reed from 2006-12-20.
The fibre channel IOC may kill a request for a variety of reasons, some of which may be recovered by a retry, some of which are unlikely to be recovered. Return DID_ERROR instead of DID_RESET to permit retry of the command, just not an infinite number of them.
Signed-off-by Michael Reed <[email protected]>
Signed-off-by Eric Moore <[email protected]>
drivers/message/fusion/mptscsih.c +11 -0
@@ -701,6 +701,17 @@ mptscsih_io_done(MPT_ADAPTER *ioc, MPT_Fbreak ; } } + }else if (ioc->bus_type ==FC ) { +/* +* The FC IOC may kill a request for variety of +* reasons, some of which may be recovered by a +* retry, some which are unlikely to be +* recovered. Return DID_ERROR instead of +* DID_RESET to permit retry of the command, +* just not an infinite number of them +*/ + sc->result =DID_ERROR <<16 ; +break ; }/*