From: Stefan Richter <stefanr@s5r6.in-berlin.de>
To: Matthew Wilcox <matthew@wil.cx>
Cc: Pekka J Enberg <penberg@cs.helsinki.fi>,
Alan Stern <stern@rowland.harvard.edu>,
linux-kernel@vger.kernel.org, dsd@gentoo.org,
mdharm-usb@one-eyed-alien.net, linux-usb@vger.kernel.org,
vegardno@ifi.uio.no, James.Bottomley@HansenPartnership.com,
linux-scsi@vger.kernel.org, Greg KH <greg@kroah.com>
Subject: Re: [RFC/PATCH] usb-storage: wait for device scanning before mounting root
Date: Thu, 19 Jun 2008 21:54:06 +0200 [thread overview]
Message-ID: <485AB95E.5070609@s5r6.in-berlin.de> (raw)
In-Reply-To: <20080619185419.GN4392@parisc-linux.org>
Matthew Wilcox wrote:
> On Thu, Jun 19, 2008 at 08:39:38PM +0200, Stefan Richter wrote:
>> The problem is AFAIU not exactly how many Scsi_Host instances (initiator
>> port representations, or something remotely related to that) are
>> instantiated, but rather _when_ they are instantiated. On multi
>> protocol buses or networks like USB and FireWire, it makes sense to
>> create the SCSI initiator port representation when we discovered that
>> there are actually SCSI targets on the bus or network.
>
> I'm not convinced of that.
Drivers like usb-storage and sbp2 are high-level drivers (protocol
drivers) on top of driver stacks. They a priori talk to struct device
instances which represent subunits on "external" devices; they don't
have much business with the local host controller device. For them,
"SCSI initiator port" is a rather hazy and, in the implementation,
uninteresting concept. (That's how it is with sbp2; I'm only guessing
how it is with usb-storage.)
However, there are several ways to accomplish the same thing in the
implementation. I heard there were more constraints under Linux 2.4;
some current implementation details may just be legacy.
> Why shouldn't we create one scsi host for
> all USB scsi devices?
Or one for each USB HCD.
I thought about that for FireWire but never started to actually try it
out. Parent-child relationships of struct devices would be different
from what we have today.
[...]
> The mail that I just pinged described a way to enhance the
> API -- letting you tell scsi "I've started scanning, save me a place in
> the queue" and "I've finished scanning, hook me up".
When would be the right time to say "I've started scanning"? SCSI
transport driver initialization? Or end of USB/FireWire/... HCD
registration?
When to say "I've finished scanning"? --- I think the answer is: When
(a) probing of a configurable number of SCSI targets or logical units
was finished or (b) a configurable timeout occurs, whatever of the two
happens first.
(Explanation, if one is necessary: SCSI targets may pop out of the
woods any time; it is impossible to say "from this moment on there won't
show up any new ones anymore". This is just as true for cold boot and
warm boot as it is for subsequent operation.)
--
Stefan Richter
-=====-==--- -==- =--==
http://arcgraph.de/sr/
next prev parent reply other threads:[~2008-06-19 19:56 UTC|newest]
Thread overview: 32+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-04-24 20:21 Pekka J Enberg
2008-04-24 21:08 ` Alan Stern
2008-04-24 21:25 ` Pekka J Enberg
2008-04-24 22:56 ` Greg KH
2008-04-24 23:30 ` Matthew Dharm
2008-04-25 6:30 ` Pekka J Enberg
2008-04-25 7:04 ` Matthew Dharm
2008-04-25 8:19 ` Pekka J Enberg
2008-04-25 15:35 ` Matthew Dharm
2008-04-25 16:05 ` Greg KH
2008-04-25 6:09 ` Pekka J Enberg
2008-04-25 7:53 ` Stefan Richter
2008-04-25 8:15 ` Pekka J Enberg
2008-04-25 9:11 ` Matthew Wilcox
2008-06-19 18:23 ` Matthew Wilcox
2008-06-19 18:39 ` Stefan Richter
2008-06-19 18:43 ` Stefan Richter
2008-06-19 18:54 ` Matthew Wilcox
2008-06-19 19:52 ` Matthew Dharm
2008-06-19 20:49 ` Matthew Wilcox
2008-06-19 21:19 ` Stefan Richter
2008-06-19 19:54 ` Stefan Richter [this message]
2008-06-19 20:22 ` Matthew Wilcox
2008-06-19 20:34 ` Stefan Richter
2008-06-19 21:39 ` Alan Stern
2008-06-19 23:13 ` David Brownell
2008-06-20 9:53 ` Gabor Gombas
2008-06-20 14:14 ` Matthew Dharm
2008-06-20 15:15 ` Vegard Nossum
2008-06-20 15:31 ` Matthew Wilcox
2008-06-20 15:42 ` Alan Stern
2008-06-20 16:37 ` 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=485AB95E.5070609@s5r6.in-berlin.de \
--to=stefanr@s5r6.in-berlin.de \
--cc=James.Bottomley@HansenPartnership.com \
--cc=dsd@gentoo.org \
--cc=greg@kroah.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-scsi@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=matthew@wil.cx \
--cc=mdharm-usb@one-eyed-alien.net \
--cc=penberg@cs.helsinki.fi \
--cc=stern@rowland.harvard.edu \
--cc=vegardno@ifi.uio.no \
/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
all inboxes | Powered by JetHome®