aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/message
diff options
context:
space:
mode:
authorEric Moore <eric.moore@lsi.com>2007-03-19 10:31:51 -0600
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>2007-03-20 11:31:51 -0500
commitad8c31bb69d60c0c6bc6431bccdf67e5a96c0d31 (patch)
treec479b1bd0f09fd0b31df6343d33488e729958b7e /drivers/message
parentb364fd5081b02fa8a966a29eea2da628913fd4b8 (diff)
downloadkernel_goldelico_gta04-ad8c31bb69d60c0c6bc6431bccdf67e5a96c0d31.zip
kernel_goldelico_gta04-ad8c31bb69d60c0c6bc6431bccdf67e5a96c0d31.tar.gz
kernel_goldelico_gta04-ad8c31bb69d60c0c6bc6431bccdf67e5a96c0d31.tar.bz2
[SCSI] fusion: remove VMWare guest OS remounted as read only work around
This address the issue of VMWare guest OS being remounted as read-only becuase the underlying device was held busy too long and at the same time address Engenio MPP driver concerns over infinite retries. This patch removes the code that snoops the SAM STATUS on busy, which would be returning DID_BUS_BUSY, instead we return the status as is. Retry hanlding seems to be properly handled in scsi_softirq_done, where a busy sam status would only occurr for the time specified by (cmd->allowed +1) * cmd->timeout_per_command. Signed-off-by: Eric Moore <Eric.Moore@lsi.com> Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
Diffstat (limited to 'drivers/message')
-rw-r--r--drivers/message/fusion/mptscsih.c5
1 files changed, 1 insertions, 4 deletions
diff --git a/drivers/message/fusion/mptscsih.c b/drivers/message/fusion/mptscsih.c
index 537fcc2..fa0f776 100644
--- a/drivers/message/fusion/mptscsih.c
+++ b/drivers/message/fusion/mptscsih.c
@@ -819,10 +819,7 @@ mptscsih_io_done(MPT_ADAPTER *ioc, MPT_FRAME_HDR *mf, MPT_FRAME_HDR *mr)
sc->resid=0;
case MPI_IOCSTATUS_SCSI_RECOVERED_ERROR: /* 0x0040 */
case MPI_IOCSTATUS_SUCCESS: /* 0x0000 */
- if (scsi_status == MPI_SCSI_STATUS_BUSY)
- sc->result = (DID_BUS_BUSY << 16) | scsi_status;
- else
- sc->result = (DID_OK << 16) | scsi_status;
+ sc->result = (DID_OK << 16) | scsi_status;
if (scsi_state == 0) {
;
} else if (scsi_state & MPI_SCSI_STATE_AUTOSENSE_VALID) {