From: Hannes Reinecke <hare@suse.de>
To: linux-hotplug@vger.kernel.org
Subject: Re: initramfs: udev, hotplug, klibc and modprobe
Date: Fri, 14 Jan 2005 10:27:12 +0000 [thread overview]
Message-ID: <41E79E80.4010009@suse.de> (raw)
In-Reply-To: <1105307950.9630.49.camel@juerg-p4.bitron.ch>
Kay Sievers wrote:
> On Fri, 2005-01-14 at 10:29 +0100, Hannes Reinecke wrote:
>
>>Kay Sievers wrote:
>>
>>>How do we handle the events traveling in before we flush the queue to
>>>the real udevd? Timeout?
>>>
>>
>>No, we should do it with a staged approach:
>>
>>- Fire up udevd
>>- send USR1 to udevinitd
>>- udevinitd sends magic "Hey, this is udevsend talking to you" message
>> to udevd
>>- udevd stops executing events in response to that magic message
>
>
> If udevd already executes events before we get the initrams events
> flushed in, we execute them not in the right order. Is this ok?
> Shouldn't we just queue _all_ events until we got the initramfs ones?
>
>
It's a bit tricky as we don't know on startup whether we'll get any
initramfs events. If the user doesn't use udevinitd (or it fails or
whatever) we'll be waiting forever.
>>- set /proc/sys/kernel/hotplug to udevsend
>>- udevinitd sends events to udevd
>>- any events sent by the 'real' udevsend will be queued
>>- once udevinitd has sent all events to udevd, it sends a magic
>> "I'm done with" message to udevd
>>- udevd starts processing events.
>>
>>This way, we won't lose events plus all events will be executed in-order.
>
>
> Seems possible at least, to collect all events from the very beginning
> on and replay them from real userspace without the need for coldplug or
> udevstart. Sounds nice! We can even load-limit from udevd here. :)
>
Well, not quite, as udevsend will still be started from the kernel. But
yes, load-limiting is a definite should-have.
>>>I think initramfs should use the hotplug multiplexer and call the normal
>>>udev binary directly to create the nodes along with initudevd to queue
>>>the events.
>>>
>>
>>Ah well. The old problem.
>>In doing this you have to make sure to copy the _entire_ hotplug
>>subsystem plus all called scripts and programs to initramfs.
>>Plus any configuration file used by any of those.
>>And you have to make sure that any change in those configuration file is
>>being reflected to the initramfs, too.
>>
>>Still looking for proper ways of solving this. In the meantime, I opted
>>for using a minimal hotplug version in initramfs: just set
>>/proc/sys/kernel/hotplug to 'udev' to have all device nodes created and
>>load all required modules by hand.
>
>
> But we need to collect the events here with initudevd now. initudevd can
> execute udev just like the real udevd does today, but keep the queue for
> a later flush into the real udevd.
>
Yeah, sure.
We'll have to do the queueing bit anyway.
(Currently it's done in script-logic, not nice).
Cheers,
Hannes
--
Dr. Hannes Reinecke hare@suse.de
SuSE Linux AG S390 & zSeries
Maxfeldstraße 5 +49 911 74053 688
90409 Nürnberg http://www.suse.de
-------------------------------------------------------
The SF.Net email is sponsored by: Beat the post-holiday blues
Get a FREE limited edition SourceForge.net t-shirt from ThinkGeek.
It's fun and FREE -- well, almost....http://www.thinkgeek.com/sfshirt
_______________________________________________
Linux-hotplug-devel mailing list http://linux-hotplug.sourceforge.net
Linux-hotplug-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/linux-hotplug-devel
next prev parent reply other threads:[~2005-01-14 10:27 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-01-09 21:59 initramfs: udev, hotplug, klibc and modprobe Jürg Billeter
2005-01-09 22:25 ` Juerg Billeter
2005-01-12 2:37 ` Kay Sievers
2005-01-12 5:07 ` Alexander E. Patrakov
2005-01-12 7:58 ` Jürg Billeter
2005-01-12 8:24 ` Jürg Billeter
2005-01-12 9:42 ` Harald Hoyer
2005-01-12 9:59 ` Alexander E. Patrakov
2005-01-13 1:08 ` Kay Sievers
2005-01-13 3:50 ` Alexander E. Patrakov
2005-01-13 12:55 ` Kay Sievers
2005-01-13 14:34 ` Juerg Billeter
2005-01-13 15:21 ` Kay Sievers
2005-01-13 16:16 ` Juerg Billeter
2005-01-14 9:29 ` Hannes Reinecke
2005-01-14 10:04 ` Kay Sievers
2005-01-14 10:27 ` Hannes Reinecke [this message]
2005-01-14 10:36 ` Kay Sievers
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=41E79E80.4010009@suse.de \
--to=hare@suse.de \
--cc=linux-hotplug@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.