public inbox for linux-scsi@vger.kernel.org
 help / color / mirror / Atom feed
From: Michael Reed <mdr@sgi.com>
To: James Bottomley <James.Bottomley@SteelEye.com>
Cc: James.Smart@Emulex.Com, Christoph Hellwig <hch@infradead.org>,
	linux-scsi <linux-scsi@vger.kernel.org>, Jim Nead <jnead@sgi.com>,
	Jeremy Higdon <jeremy@sgi.com>, Gary Hagensen <gwh@sgi.com>
Subject: Re: [PATCH] make fc transport removal of target configurable
Date: Tue, 13 Jun 2006 16:44:16 -0500	[thread overview]
Message-ID: <448F31B0.5000104@sgi.com> (raw)
In-Reply-To: <1150228960.3441.72.camel@mulgrave.il.steeleye.com>



James Bottomley wrote:
> On Tue, 2006-06-13 at 14:37 -0500, Michael Reed wrote:
>> Not really true as the transport holds off the error handler until the
>> transport dev loss timer expires.
>>
>> And afterwards, commands are returned immediately with DID_NO_CONNECT.
>> The device is never offlined (with my patch applied).
> 
> That was just a general examination of the options for retaining contact
> with the target.
> 
> It seems we both agree that returning an error is about the only viable
> option, in which case the user or application has to take a recovery
> action anyway, so there's no logical difference between what you propose
> and what we currently do as far as the application or filesystem is
> concerned.
> 
> The only difference is what happens if the device reappears.  However,
> since the application has to be modified in either case:  your patch to
> continually probe with I/O to see if the device has returned, 

I'm not suggesting that any application would probe with i/o, though
it may or may not be doing that today.  If it is, the difference is
that the i/o will have the possibility of success when the target
ultimately returns.  With the current code, the i/o will never, ever,
succeed.  (Without app change, of course.)

or the
> existing case to wait out the udev event that says the device is back it
> doesn't really buy us anything for the application.  

BTW, I consider "application" to include kernel code such as volume
managers and file systems.  The applications don't require any modifications
with the new patch.  They still get failure notification in either case.
They still fail to work while the target is disconnected.  They can choose
to terminate or not.

> Since the rest of
> our infrastructure is already event driven, or migrating that way, I
> really don't see value in introducing an anomaly like this purely for
> fibre channel.

It's tough on fibre channel, being first.  :)

Among the benefits of this patch is the purchase of time.  With the fc
infrastructure the way it is, you're assured of forcing developers to
"publish or perish".  That may be the intended desire.  It just doesn't
seem fair to the users who have to deal with this.  It makes sense to
me to implement the event driven infrastructure in such a way that
it's more complete when released.  If infrastructure is going to be
removed, then "applications" have to be adjusted to accommodate this.
It shouldn't be, oh by the way, your driver/app is now broken, hurry up
and fix it or your users will complain.  [End Of Rant].  My patch
buys time.  Change the default so that the remove on disconnect has
to be consciously overridden.  Remove the variable when the supporting
infrastructure is in place.  Put out a message indicating that the
option of not removing the infrastructure is "going away" in a future
release.  Provide an orderly transition.  Insure domestic tranquility.
Promote the general welfare.  :)  I'm happy to adjust the patch
to accommodate any of these suggestions if they are deemed acceptable.

Thanks for taking the time to consider and discuss this issue.  I see
your point and I've made mine.  I trust your judgment.

Thanks,
 Mike

> 
> James
> 
> 

  reply	other threads:[~2006-06-13 21:44 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2006-06-12 23:16 [PATCH] make fc transport removal of target configurable Michael Reed
2006-06-13  7:07 ` Christoph Hellwig
2006-06-13 11:06   ` James Smart
2006-06-13 15:42     ` Michael Reed
2006-06-13 17:24       ` Stefan Richter
2006-06-13 19:36         ` Michael Reed
2006-06-13 23:13           ` Stefan Richter
2006-06-13 17:33       ` Steve Byan
2006-06-13 19:35         ` Michael Reed
2006-06-13 19:49           ` Steve Byan
2006-06-13 17:59       ` James Bottomley
2006-06-13 19:37         ` Michael Reed
2006-06-13 20:02           ` James Bottomley
2006-06-13 21:44             ` Michael Reed [this message]
2006-06-14  7:21               ` Hannes Reinecke
2006-06-14 16:18                 ` Mike Christie
2006-06-14 16:31             ` Mike Christie
2006-06-15  9:04               ` Stefan Richter

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=448F31B0.5000104@sgi.com \
    --to=mdr@sgi.com \
    --cc=James.Bottomley@SteelEye.com \
    --cc=James.Smart@Emulex.Com \
    --cc=gwh@sgi.com \
    --cc=hch@infradead.org \
    --cc=jeremy@sgi.com \
    --cc=jnead@sgi.com \
    --cc=linux-scsi@vger.kernel.org \
    /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