From: James Bottomley <James.Bottomley@steeleye.com>
To: Mike Anderson <andmike@us.ibm.com>
Cc: SCSI Mailing List <linux-scsi@vger.kernel.org>,
Alan Stern <stern@rowland.harvard.edu>
Subject: Re: [PATCH] make the SCSI mid-layer obey the device online flag
Date: 04 Jun 2003 15:14:56 -0400 [thread overview]
Message-ID: <1054754103.2360.8.camel@mulgrave> (raw)
In-Reply-To: <20030604165146.GA1426@beaverton.ibm.com>
On Wed, 2003-06-04 at 12:51, Mike Anderson wrote:
> Doesn't this patch just re-implement in the prep_fn what is already
> being done by sd and sr in there init_command functions.
Yes, it's a precursor to consolidating them.
> Why allow io after online goes to zero. The user could bring the device
> back online if they needed to send IO. I was counting on no IO so we could
> do faster cleanup in the scsi_remove_host function.
Fundamentally, a queue is an asynchronous thing. It is difficult (but
not imposible) to make the setting offline atomically guarantee no more
commands will be sent down.
However, on a philosophical level, it isn't necessarily desirable.
Suppose we use offline to disconnect from a mounted filesystem (say
USB/Firewire unplug). The user level might want to probe the device
before setting the online flag (which will resume the unerrored fs
transactions).
> I having been looking at this, but it is not very clean. To use existing
> common functionality and avoid deadlock from calling back into the
> request_fn the command needs wasted preparation just to use common
> interfaces.
Yes, that's why I think forbidding *all* I/O after offlining is too much
effort. Offlining should be a precursor to device destruction, but
actual destruction probably relys on detaching the queue from the block
device interface and sitting on it until all use counts drop to zero.
James
next prev parent reply other threads:[~2003-06-04 19:01 UTC|newest]
Thread overview: 23+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-06-04 16:01 [PATCH] make the SCSI mid-layer obey the device online flag James Bottomley
2003-06-04 16:51 ` Mike Anderson
2003-06-04 19:14 ` James Bottomley [this message]
2003-06-05 0:34 ` Patrick Mansfield
2003-06-05 12:59 ` James Bottomley
2003-06-05 13:41 ` Alan Stern
2003-06-06 6:36 ` Christoph Hellwig
2003-06-06 15:19 ` James Bottomley
2003-06-06 15:51 ` Oliver Neukum
2003-06-06 16:02 ` Luben Tuikov
2003-06-06 15:28 ` Luben Tuikov
2003-06-06 15:39 ` James Bottomley
2003-06-06 15:52 ` Luben Tuikov
2003-06-06 16:04 ` James Bottomley
2003-06-06 20:51 ` Christoph Hellwig
2003-06-06 23:27 ` Luben Tuikov
2003-06-06 23:43 ` James Bottomley
2003-06-07 5:20 ` Luben Tuikov
2003-06-06 20:23 ` Mike Anderson
2003-06-06 20:52 ` Christoph Hellwig
2003-06-10 0:00 ` Mike Anderson
2003-06-06 20:49 ` Christoph Hellwig
2003-06-06 23:21 ` Luben Tuikov
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=1054754103.2360.8.camel@mulgrave \
--to=james.bottomley@steeleye.com \
--cc=andmike@us.ibm.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