1
0
Files
linux/drivers/scsi
Tejun Heo f686bcb807 [PATCH] libata-eh-fw: implement new EH scheduling via error completion
There are several ways a qc can get schedule for EH in new EH.  This
patch implements one of them - completing a qc with ATA_QCFLAG_FAILED
set or with non-zero qc->err_mask.  ALL such qc's are examined by EH.

New EH schedules a qc for EH from completion iff ->error_handler is
implemented, qc is marked as failed or qc->err_mask is non-zero and
the command is not an internal command (internal cmd is handled via
->post_internal_cmd).  The EH scheduling itself is performed by asking
SCSI midlayer to schedule EH for the specified scmd.

For drivers implementing old-EH, nothing changes.  As this change
makes ata_qc_complete() rather large, it's not inlined anymore and
__ata_qc_complete() is exported to other parts of libata for later
use.

Signed-off-by: Tejun Heo <htejun@gmail.com>
2006-05-15 20:58:05 +09:00
..
2005-04-16 15:20:36 -07:00
2006-03-25 08:22:52 -08:00
2006-03-24 07:33:24 -08:00
2006-01-01 22:21:50 +01:00
2006-04-11 06:18:46 -07:00
2006-01-14 10:55:12 -06:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-14 14:18:01 -06:00
2005-04-16 15:20:36 -07:00
2006-05-15 20:57:56 +09:00
2006-03-25 08:22:52 -08:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-11-09 15:44:09 -05:00
2005-11-09 15:44:09 -05:00
2005-04-16 15:20:36 -07:00
2005-10-28 21:04:15 -05:00
2005-04-16 15:20:36 -07:00
2006-02-22 14:35:52 -08:00
2005-04-16 15:20:36 -07:00
2005-11-09 15:48:20 -05:00
2005-11-09 15:48:20 -05:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-11-09 15:48:20 -05:00
2005-04-16 15:20:36 -07:00
2005-11-09 15:48:20 -05:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-04-13 10:13:29 -05:00
2006-04-13 10:13:30 -05:00
2006-02-04 16:19:08 -06:00
2006-03-14 14:18:01 -06:00
2005-04-16 15:20:36 -07:00
2006-04-18 04:54:00 -04:00
2005-04-16 15:20:36 -07:00
2006-02-27 22:55:08 -06:00
2006-01-12 09:09:05 -08:00
2005-11-09 15:48:20 -05:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-04-11 12:51:40 -04:00
2005-11-09 15:48:20 -05:00
2005-11-09 15:48:20 -05:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-05-20 12:53:13 -05:00
2005-05-20 12:53:13 -05:00
2005-05-20 12:53:13 -05:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-04-11 12:51:40 -04:00
2006-04-11 12:51:40 -04:00
2006-04-11 12:51:40 -04:00
2006-04-11 12:51:40 -04:00
2006-04-11 12:51:40 -04:00
2006-04-11 12:51:40 -04:00
2005-04-16 15:20:36 -07:00
2006-02-27 22:55:02 -06:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00
2006-03-25 08:23:02 -08:00
2006-04-13 10:13:27 -05:00
2005-12-17 10:50:23 -06:00
2006-03-23 07:38:09 -08:00
2006-03-23 07:38:09 -08:00
2005-04-16 15:20:36 -07:00
2005-10-28 21:04:15 -05:00
2005-04-16 15:20:36 -07:00
2005-04-16 15:20:36 -07:00