On Wed, 2012-12-19 at 15:24 +0100, Bart Van Assche wrote:
> If a SCSI command times out it is passed to the SCSI error
> handler. The SCSI error handler will try to abort the commands
> that timed out. If aborting failed a device reset will be
> attempted. If the device reset also fails a host reset will
> be attempted. If the host reset also fails the whole procedure
> will be repeated.
> 
> srp_abort() and srp_reset_device() fail for a QP in the error
> state. srp_reset_host() fails after host removal has started.
> Hence if the SCSI error handler gets invoked after host removal
> has started and with the QP in the error state an endless loop
> will be triggered.
> 
> Modify the SCSI error handling functions in ib_srp as follows:
> - Abort SCSI commands properly even if the QP is in the error
>   state.
> - Make srp_reset_host() reset SCSI requests even after host
>   removal has already started or if reconnecting fails.
> 
> Signed-off-by: Bart Van Assche <[email protected]>

It's not the cleanest way to handle this, but it is the simplest and
we're short on time.

Acked-by: David Dillow <[email protected]>

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to