Tejun Heo f29841e08f [PATCH] libata: implement ata_scsi_timed_out()
Implement ata_scsi_timed_out(), to be used as
scsi_host_template->eh_timed_out callback for all libata drivers.
Without this function, the following race exists.

If a qc completes after SCSI timer expires but before libata EH kicks
in, the qc gets completed but the scsicmd still gets passed to libata
EH resulting in ->eng_timeout invocation with NULL qc, which none is
handling properly.

This patch makes sure that scmd and qc share the same lifetime.
Original idea from Jeff Garzik <jgarzik@pobox.com>.

Signed-off-by: Tejun Heo <htejun@gmail.com>
Signed-off-by: Jeff Garzik <jgarzik@pobox.com>
2006-02-10 06:50:46 -05:00
..
2006-01-14 10:55:12 -06:00
2006-01-14 10:55:12 -06:00
2006-01-14 10:55:12 -06:00
2006-01-14 10:55:12 -06:00
2006-01-29 12:41:09 -05:00
2006-01-15 02:00:17 +01:00
2006-01-14 10:55:18 -06:00
2006-01-12 09:09:05 -08:00
2006-02-02 16:17:31 -05:00
2006-01-17 07:58:42 -05:00
2006-02-02 01:12:54 -05:00
2006-02-07 20:58:27 -05:00
2006-01-12 09:09:04 -08:00