[SCSI] mptfusion: Use DID_TRANSPORT_DISRUPTED instead of DID_BUS_BUSY
Kashyap, Desai [Thu, 17 Jun 2010 09:07:25 +0000 (14:07 +0530)]
Changed the return value for Nexus Loss IOs to be DID_TRANSPORT_DISRUPTED.
What this will allow is the multi-path driver to delay the fail over
process. They would like the path to keep up as long as the nexus loss
Loginfo is return from firmware. With DID_BUS_BUSY the path fails over
immediately.

Signed-off-by: Kashyap Desai <kashyap.desai@lsi.com>
Signed-off-by: James Bottomley <James.Bottomley@suse.de>

drivers/message/fusion/mptscsih.c

index 407cb84..5a3c10e 100644 (file)
@@ -742,7 +742,9 @@ mptscsih_io_done(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *mr)
                                if (ioc_status & MPI_IOCSTATUS_FLAG_LOG_INFO_AVAILABLE) {
                                        if ((log_info & SAS_LOGINFO_MASK)
                                            == SAS_LOGINFO_NEXUS_LOSS) {
-                                               sc->result = (DID_BUS_BUSY << 16);
+                                               sc->result =
+                                                       (DID_TRANSPORT_DISRUPTED
+                                                       << 16);
                                                break;
                                        }
                                }