public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Robert Love <robert.w.love@intel.com>
To: stern@rowland.harvard.edu, James.Bottomley@HansenPartnership.com
Cc: linux-scsi@vger.kernel.org
Subject: Retrying cmd when SNS Key is "Unit Attention" and the device is not removable
Date: Tue, 13 Jan 2009 16:26:34 -0800	[thread overview]
Message-ID: <1231892794.7870.54.camel@fritz> (raw)

I'm not seeing commands retried when the target returns "Check
Condition / Unit Attention" for SNS data.

I narrowed it down to commit id:
b60af5b0adf0da24c673598c8d3fb4d4189a15ce which makes changes to the
scsi_io_completion() function. In particular it is now calling
scsi_queue_insert(cmd, SCSI_MLQUEUE_EH_RETRY) instead of
scsi_requeue_command() when the sense_key is UNIT_ATTENTION and the
device is not removable. I don't fully understand the differences in
these functions, and I'm continuing to investigate, but something is
causing the command to not be retried.

I came across this when I was testing Open-FCoE's reset functionality.
We logout of targets and then re-login to them. The binding persists and
the target is shown as "Online" after the re-login. After that, if I run
'fdisk -l' the SCSI-ml sends a "Read(10)" command and the target replies
with "Status: Check Condition (0x02)" and fdisk hangs. Before the above
mentioned patch the SCSI-ml would retry and the response would be good
(w/ payload). I'm not sure why the target/lun replies with "Check
Condition."

Was it intentional that this patch changed the retry function for
(sense_key == UNIT_ATTENTION && !cmd->device->removable)? I imagine so
because the commit message talks about the various retry scenarios. Does
anyone have any leads as to why this doesn't retry?

Thanks,

//Rob


             reply	other threads:[~2009-01-14  0:26 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-01-14  0:26 Robert Love [this message]
2009-01-14 19:46 ` Retrying cmd when SNS Key is "Unit Attention" and the device is not removable Love, Robert W

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=1231892794.7870.54.camel@fritz \
    --to=robert.w.love@intel.com \
    --cc=James.Bottomley@HansenPartnership.com \
    --cc=linux-scsi@vger.kernel.org \
    --cc=stern@rowland.harvard.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox