ac17ea8d7d
The fcp packet recovery handler fc_fcp_recover() is called when errors occurr in a fcp session. Currently it is generically setting the status code to FC_CMD_RECOVERY for all error types. This results in DID_BUS_BUSY errors being returned to the scsi-ml. DID_BUS_BUSY errors indicate "BUS stayed busy through time out period" according to scsi.h. Many of the error reported by fc_rcp_recovery() are pkt errors. Here we update fc_fcp_recovery to use better host byte codes. With certain FAST FAIL flags set DID_BUS_BUSY and DID_ERROR will have different behaviors this was causing dm multipath to fail quickly in some cases where a retry would be a better action. Signed-off-by: John Fastabend <john.r.fastabend@intel.com> Signed-off-by: Robert Love <robert.w.love@intel.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de> |
||
---|---|---|
.. | ||
fc_disc.c | ||
fc_elsct.c | ||
fc_exch.c | ||
fc_fcp.c | ||
fc_frame.c | ||
fc_libfc.c | ||
fc_libfc.h | ||
fc_lport.c | ||
fc_npiv.c | ||
fc_rport.c | ||
Makefile |