On Sun, Jun 05, 2005 at 12:15:27AM -0700, Mike Christie wrote: > On Sat, 2005-06-04 at 09:07, James Bottomley wrote: > > Here's the proof of concept for this one. It converts scsi_wait_req to > > do correct REQ_BLOCK_PC submission (and works nicely in my setup). That is nice ... I didn't realize Mike's change allowed that. > > There's some loss of functionality to this: retries are no longer > > controllable (except by setting REQ_FASTFAIL) and the wait_req API needs > > to be altered, but it looks very nice. Mike your patch did not replace the retries. Why can't the retries be passed down via a new blk req->retries? Or just have scsi_wait_req() do the retries for us (it can sleep). It is hard to look at the scsi IO completion paths and see exactly what we do and don't (well should and should not) retry. That is we call scsi_retry_command() conditionally based on "retries" but can repeatedly call scsi_requeue_command() in scsi_io_completion(). -- Patrick Mansfield - : send the line "unsubscribe linux-scsi" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html