[PATCH] libata-eh-fw: update ata_scsi_error() for new EH
authorTejun Heo <htejun@gmail.com>
Mon, 15 May 2006 11:58:12 +0000 (20:58 +0900)
committerTejun Heo <htejun@gmail.com>
Mon, 15 May 2006 11:58:12 +0000 (20:58 +0900)
commitad9e27624479bd167dd7eac0cea4bb3ad13bc926
tree47b863c91509a29c9b0f760faa52d60a95272ba6
parentdafadcde8d4dc5ea8c742faa7ff4403336b542b8
[PATCH] libata-eh-fw: update ata_scsi_error() for new EH

Update ata_scsi_error() for new EH.  ata_scsi_error() is responsible
for claiming timed out qcs and invoking ->error_handler in safe and
synchronized manner.  As the state of the controller is unknown if a
qc has timed out, the port is frozen in such cases.

Note that ata_scsi_timed_out() isn't used for new EH.  This is because
a timed out qc cannot be claimed by EH without freezing the port and
freezing the port in ata_scsi_timed_out() results in unnecessary
abortion of other active qcs.  ata_scsi_timed_out() can be removed
once all drivers are converted to new EH.

While at it, add 'TODO: kill' comments to old EH functions.

Signed-off-by: Tejun Heo <htejun@gmail.com>
drivers/scsi/libata-eh.c
include/linux/libata.h