From: Douglas Gilbert <dgilbert@interlog.com>
To: Hannes Reinecke <hare@suse.de>
Cc: James Bottomley <jbottomley@suse.de>,
linux-scsi@vger.kernel.org, jaxboe@fusionio.com,
michaelc@cs.wisc.edu, agk@redhat.com,
Mike Snitzer <snitzer@redhat.com>
Subject: Re: [PATCH v4 1/3] scsi: Detailed I/O errors
Date: Tue, 18 Jan 2011 12:33:55 +0100 [thread overview]
Message-ID: <4D357AA3.5070509@interlog.com> (raw)
In-Reply-To: <b6ba7efc491aec18cd501f73e2e6bbebc2e0727a.1295340405.git.hare@suse.de>
On 11-01-18 10:13 AM, Hannes Reinecke wrote:
> Instead of just passing 'EIO' for any I/O error we should be
> notifying the upper layers with more details about the cause
> of this error.
>
> Update the possible I/O errors to:
>
> - ENOLINK: Link failure between host and target
> - EIO: Retryable I/O error
> - EREMOTEIO: Non-retryable I/O error
> - EBADE: I/O error restricted to the I_T_L nexus
>
> 'Retryable' in this context means that an I/O error _might_ be
> restricted to the I_T_L nexus (vulgo: path), so retrying on another
> nexus / path might succeed.
>
> 'Non-retryable' in general refers to a target failure, so this
> error will always be generated regardless of the I_T_L nexus
> it was send on.
>
> I/O errors restricted to the I_T_L nexus might be retried
> on another nexus / path, but they should _not_ be queued
> if no paths are available.
Hannes,
I don't know if it is applicable to this patch but with
SAS when the uplink from an expander is being stressed
(i.e. it temporarily doesn't have enough bandwidth) then
a sense key of ABORTED COMMAND may be generated. In my
experience retrying such a command succeeds.
BTW might "vulgo" be "ergo" [Latin: therefore]?
Doug Gilbert
next prev parent reply other threads:[~2011-01-18 11:33 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-18 9:13 [PATCH v4 0/3] differentiate between I/O errors Hannes Reinecke
2011-01-18 9:13 ` [PATCH v4 1/3] scsi: Detailed " Hannes Reinecke
2011-01-18 11:33 ` Douglas Gilbert [this message]
2011-01-18 12:01 ` Hannes Reinecke
2011-01-27 22:35 ` Mike Snitzer
2011-01-27 22:41 ` James Bottomley
2011-01-27 22:54 ` Mike Snitzer
2011-01-28 8:12 ` Jens Axboe
2011-01-28 13:11 ` Alasdair G Kergon
2011-01-18 9:13 ` [PATCH v4 2/3] dm mpath: propagate target errors immediately Hannes Reinecke
2011-01-18 9:13 ` [PATCH v4 3/3] block: improve detail in I/O error messages Hannes Reinecke
2011-01-27 22:51 ` Mike Snitzer
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4D357AA3.5070509@interlog.com \
--to=dgilbert@interlog.com \
--cc=agk@redhat.com \
--cc=hare@suse.de \
--cc=jaxboe@fusionio.com \
--cc=jbottomley@suse.de \
--cc=linux-scsi@vger.kernel.org \
--cc=michaelc@cs.wisc.edu \
--cc=snitzer@redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.