Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

[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>

authored by

Eric Moore and committed by
James Bottomley
ad8c31bb b364fd50

+1 -4
+1 -4
drivers/message/fusion/mptscsih.c
··· 819 819 sc->resid=0; 820 820 case MPI_IOCSTATUS_SCSI_RECOVERED_ERROR: /* 0x0040 */ 821 821 case MPI_IOCSTATUS_SUCCESS: /* 0x0000 */ 822 - if (scsi_status == MPI_SCSI_STATUS_BUSY) 823 - sc->result = (DID_BUS_BUSY << 16) | scsi_status; 824 - else 825 - sc->result = (DID_OK << 16) | scsi_status; 822 + sc->result = (DID_OK << 16) | scsi_status; 826 823 if (scsi_state == 0) { 827 824 ; 828 825 } else if (scsi_state & MPI_SCSI_STATE_AUTOSENSE_VALID) {