Commit 86dd4242 authored by Eric Moore's avatar Eric Moore Committed by James Bottomley

[SCSI] 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: default avatarMichael Reed <mdr@sgi.com>
Signed-off-by: default avatarEric Moore <Eric.Moore@lsi.com>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
parent 3d6d174a
......@@ -701,6 +701,17 @@ mptscsih_io_done(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *mr)
break;
}
}
} 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;
}
/*
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment