diff options
Diffstat (limited to 'drivers/message/fusion/mptscsih.c')
| -rw-r--r-- | drivers/message/fusion/mptscsih.c | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/drivers/message/fusion/mptscsih.c b/drivers/message/fusion/mptscsih.c index 2c72c36b8171..076eb2b573a3 100644 --- a/drivers/message/fusion/mptscsih.c +++ b/drivers/message/fusion/mptscsih.c | |||
| @@ -701,6 +701,17 @@ mptscsih_io_done(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *mr) | |||
| 701 | break; | 701 | break; |
| 702 | } | 702 | } |
| 703 | } | 703 | } |
| 704 | } else if (ioc->bus_type == FC) { | ||
| 705 | /* | ||
| 706 | * The FC IOC may kill a request for variety of | ||
| 707 | * reasons, some of which may be recovered by a | ||
| 708 | * retry, some which are unlikely to be | ||
| 709 | * recovered. Return DID_ERROR instead of | ||
| 710 | * DID_RESET to permit retry of the command, | ||
| 711 | * just not an infinite number of them | ||
| 712 | */ | ||
| 713 | sc->result = DID_ERROR << 16; | ||
| 714 | break; | ||
| 704 | } | 715 | } |
| 705 | 716 | ||
| 706 | /* | 717 | /* |
