Re: [PATCH 7/7] initdev:kernel:Await block device discovery

From: David VomLehn
Date: Mon Jun 08 2009 - 19:13:26 EST


On Tue, Jun 09, 2009 at 12:55:01AM +0200, Stefan Richter wrote:
> David VomLehn wrote:
>> On Sat, Jun 06, 2009 at 06:04:38AM -0400, Stefan Richter wrote:
>>> 1.) It depends on the rootdelay so big that it is guaranteed that
>>> one or more initdev_found() have been called before
>>> prepare_namespace()'s ssleep(root_delay) is over.
> ...
>> I think you misunderstood. Buses are enumerated before this code is
>> reached and thus initdev_found() has already been called for all attached
>> block devices.
> ...
>> I would appreciate it if you could take a closer look at the locations where
>> initdev_found() and initdev_probe_done() are called and see if you still
>> think there is a problem.
>
> I obviously need to do that.
>
> However, one issue remains: If somebody wants to use your API for
> another bus, he needs to know at which point he can successfully use it,
> and after what point (or context) it cannot, even must not, be used
> anymore. This isn't documented --- or is it?

Hmm, I tried to make this clear in Documentation/driver-model/initdev.txt,
but I don't claim to be much of a writer and am open to suggestions.

> (By 'buses are enumerated before...' you surely mean only the buses for
> which you implemented this API usage already.)

Yes, definitely. In an ideal world, every bus which might have a console,
network, or block device would be using this API. USB is a big problem for
me, so that's the itch I scratched. Alan Stern also gave a rub to SCSI.
If people are using devices on, say, Firewire, they will have whatever
behavior they had before the introduction of the API.

> Stefan Richter

David VomLehn
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/