public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Douglas Gilbert <dgilbert@interlog.com>
To: Jeremy Linton <jlinton@tributary.com>
Cc: Mike Christie <michaelc@cs.wisc.edu>,
	Hannes Reinecke <hare@suse.de>,
	"linux-scsi@vger.kernel.org" <linux-scsi@vger.kernel.org>,
	James Smart <james.smart@emulex.com>,
	Andrew Vasquez <andrew.vasquez@qlogic.com>,
	Chad Dupuis <chad.dupuis@qlogic.com>,
	Krishna C Gudipati <kgudipat@brocade.com>,
	James Bottomley <jbottomley@parallels.com>
Subject: Re: [PATCH v2][RFC] scsi_transport_fc: Implement I_T nexus reset
Date: Thu, 07 Mar 2013 16:44:55 -0500	[thread overview]
Message-ID: <51390A57.2060706@interlog.com> (raw)
In-Reply-To: <5138F4DF.9010906@tributary.com>

On 13-03-07 03:13 PM, Jeremy Linton wrote:
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> On 3/7/2013 1:19 PM, Mike Christie wrote:
>> What happens for lpfc? It seems __fc_remote_port_delete ends up calling the
>> fast io fail code right away and that sets FC_RPORT_FAST_FAIL_TIMEDOUT. We
>> will then call lpfc_terminate_rport_io which only will send aborts for the
>> commands. We will then call fc_block_scsi_eh above and that returns
>> FAST_IO_FAIL and we will pass that back up to the scsi eh right away.
>
> 	
> 	For lpfc, you never get to the code. Or rather when I was testing it, I
> couldn't find any way to propagate an error beyond the initial
> lpfc_reset_flush_io_context() call in lpfc_device_reset_handler().
>
> 	That call pretty much always returns success indpependent of the remote
> device because the firmware acks the context clear aborts, resulting in the
> outstanding iocb count being zero (independent of both the mid layer status
> and the actual device state).
> 	
> 	Result: all the code beyond the device reset handler never gets called.

Unsurprisingly, I found pretty well the same thing with
megaraid and mpt2sas (SAS) drivers. A big thumbs up from
the drivers if a LU reset was sent when there was
no way through the expander (due to zoning) to the LU (disk)
in question. Further, when that LU (disk) was viewed from
another initiator, no UA condition had been set; more
evidence that the LU reset did not get through.

"Fire and forget" task management functions ...

Doug Gilbert




      parent reply	other threads:[~2013-03-07 21:45 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2012-12-11  8:23 [PATCH v2][RFC] scsi_transport_fc: Implement I_T nexus reset Hannes Reinecke
2012-12-11 12:46 ` Martin Peschke
2012-12-11 14:06   ` Hannes Reinecke
2013-03-07 19:19 ` Mike Christie
2013-03-07 20:13   ` Jeremy Linton
2013-03-07 20:20     ` Mike Christie
2013-03-07 20:24       ` Mike Christie
2013-03-07 20:35       ` Jeremy Linton
2013-03-11 17:05         ` Hannes Reinecke
2013-03-11 18:04           ` James Smart
2013-03-11 18:32             ` Vijay Mohan Guvva
2013-03-12 15:59             ` Hannes Reinecke
2013-03-07 21:44     ` Douglas Gilbert [this message]

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=51390A57.2060706@interlog.com \
    --to=dgilbert@interlog.com \
    --cc=andrew.vasquez@qlogic.com \
    --cc=chad.dupuis@qlogic.com \
    --cc=hare@suse.de \
    --cc=james.smart@emulex.com \
    --cc=jbottomley@parallels.com \
    --cc=jlinton@tributary.com \
    --cc=kgudipat@brocade.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox