RE: [PATCH 2/5] fusion: vmware bug fix prevent inifinite retries

James Bottomley
2007-01-08T22:28:04Z

On Mon, 2007-01-08 at 15:03 -0700, Moore, Eric wrote:
> In the 03.02.19, we add added the current logic for the following
> reason:
>
> "When a target device responds with BUSY status, the MPT driver was
> sending DID_OK to the
> SCSI mid layer, which caused the IO to be retried indefinitely between
> the mid layer and the
> driver. By changing the driver return status to DID_BUS_BUSY, the
> target BUSY status can
> now flow through the mid layer to an upper layer Failover driver, which
> will manage the I/O timeout."

Right, I sort of suspected something like this. BUSY/QUEUE_FULL
handling was a bit iffy in 2.4; but it was sorted out in the 2003/4
timeframe. Nowadays, I think you want to translate the
MPI_SCSI_STATUS_BUSY directly to SAM_STAT_BUSY (i.e. just remove the
special casing if).

James