aboutsummaryrefslogtreecommitdiffstats
path: root/include/scsi/scsi_transport.h
diff options
context:
space:
mode:
authorJeff Garzik <jeff@garzik.org>2006-03-22 19:13:54 -0500
committerJeff Garzik <jeff@garzik.org>2006-03-22 19:13:54 -0500
commitf01c18456993bab43067b678f56c87ca954aa43b (patch)
tree3e0cd0cdf1a57618202b46a7126125902e3ab832 /include/scsi/scsi_transport.h
parentMerge branch 'master' (diff)
parentMerge git://git.kernel.org/pub/scm/linux/kernel/git/perex/alsa (diff)
downloadlinux-dev-f01c18456993bab43067b678f56c87ca954aa43b.tar.xz
linux-dev-f01c18456993bab43067b678f56c87ca954aa43b.zip
Merge branch 'master'
Diffstat (limited to 'include/scsi/scsi_transport.h')
-rw-r--r--include/scsi/scsi_transport.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/scsi/scsi_transport.h b/include/scsi/scsi_transport.h
index e7b1054adf86..b3657f111937 100644
--- a/include/scsi/scsi_transport.h
+++ b/include/scsi/scsi_transport.h
@@ -48,6 +48,17 @@ struct scsi_transport_template {
* True if the transport wants to use a host-based work-queue
*/
unsigned int create_work_queue : 1;
+
+ /*
+ * This is an optional routine that allows the transport to become
+ * involved when a scsi io timer fires. The return value tells the
+ * timer routine how to finish the io timeout handling:
+ * EH_HANDLED: I fixed the error, please complete the command
+ * EH_RESET_TIMER: I need more time, reset the timer and
+ * begin counting again
+ * EH_NOT_HANDLED Begin normal error recovery
+ */
+ enum scsi_eh_timer_return (* eh_timed_out)(struct scsi_cmnd *);
};
#define transport_class_to_shost(tc) \