James Bottomley wrote:
On Wed, 2005-08-24 at 12:21 -0700, Patrick Mansfield wrote:

On Wed, Aug 24, 2005 at 04:03:58AM -0500, Mike Christie wrote:


-#define end_io_error(uptodate) (unlikely((uptodate) <= 0))
+enum {
+       BLK_SUCCESS = 0,        /* Must be zero for compat with old usage */
+       BLKERR_IO,              /* Generic I/O error */
+       BLKERR_NOTSUPP,         /* Operation is not supported */
+       BLKERR_WOULDBLOCK,      /* Operation would block */
+       BLKERR_FATAL_DRV,       /* Fatal driver error */
+       BLKERR_FATAL_DEV,       /* Fatal device error */
+       BLKERR_FATAL_XPT,       /* Fatal transport error */
+       BLKERR_RETRY_DRV,       /* Driver error, I/O may be retried */
+       BLKERR_RETRY_DEV,       /* Device error, I/O may be retried */
+       BLKERR_RETRY_XPT,       /* Transport error, I/O may retried */
+};


Actually, I'd really be happier if these were a bitmap rather than an
enumeration.  That way we can divide them easily into cause (Driver,
Device or Transport) and severity (fatal or retryable), so something
like dm-multipath would only be interested in errors it made sense for a
path to be failed over for (i.e. all transport and driver errors).


Would it be good then to also extend the fail fast flag to a bit map so dm-multipath can tell scsi that scsi should handle device errors?

-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to