From: Jeremy Linton <jlinton@tributary.com>
To: Mike Christie <michaelc@cs.wisc.edu>
Cc: "linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>
Subject: Re: [PATCH][RFC] scsi_transport_fc: Implement I_T nexus reset
Date: Fri, 7 Dec 2012 16:33:47 -0600 [thread overview]
Message-ID: <50C26ECB.3040103@tributary.com> (raw)
In-Reply-To: <50C25DA5.6040508@cs.wisc.edu>
On 12/7/2012 3:20 PM, Mike Christie wrote:
> On 12/07/2012 03:05 PM, Jeremy Linton wrote:
>> That said, its far from perfect. The code (as I understand it) isn't
>> differentiating between isolating the failure, or bringing out the big
>> hammer in an attempt to correct problems on a specific I_T_L. If you
>> drop/reset the I_T because one of the LUN's is misbehaving before
>> verifying the status of other LUN's on the target, you risk interrupting
>> operations to functional devices.
>
> When this code is called the scsi eh has run the abort handler for each
> outstanding command and that has failed, and it has run the lun/device
> reset handler and that has failed (or the eh operations succeeded but the
> TUR checkup the scsi eh does failed).
I think my issue with the error handler (rather than this patch in
particular) surrounds the fact that when scsi_eh_bus_device_reset (which maps
to lun reset) fails, it falls to scsi_eh_target_reset which issues a TARGET
RESET which then broadens the problem to devices which may be working fine,
and just happen to be on the same I_T.
I think there should be some attempt to determine if there are other devices on
the I_T, and whether they have failed before going into target_reset. It looks
like there may have been a plan to do that in bus_device_reset, but it doesn't
appear to be complete.
Now, all that said, I have a few things I wonder about in the
eh_bus_device_reset code. For one the use of TUR rather than a command with a
more straightforward return status like INQUIRY which also preserves the check
conditions.
next prev parent reply other threads:[~2012-12-07 22:33 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-12-07 14:51 [PATCH][RFC] scsi_transport_fc: Implement I_T nexus reset Hannes Reinecke
2012-12-07 18:58 ` Mike Christie
2012-12-07 19:58 ` Chad Dupuis
2012-12-07 21:05 ` Jeremy Linton
2012-12-07 21:20 ` Mike Christie
2012-12-07 22:33 ` Jeremy Linton [this message]
2012-12-10 10:18 ` Hannes Reinecke
2012-12-09 15:40 ` Hannes Reinecke
2012-12-09 23:19 ` Mike Christie
2012-12-09 23:31 ` Mike Christie
2012-12-10 2:27 ` Michael Christie
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=50C26ECB.3040103@tributary.com \
--to=jlinton@tributary.com \
--cc=linux-scsi@vger.kernel.org \
--cc=michaelc@cs.wisc.edu \
/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.