1 |
On Wed, 2006-12-13 at 12:25 -0800, Greg KH wrote: |
2 |
> > Here's a question, then. Is there a way, after boot, to cause udev to |
3 |
> > attempt to detect and load modules? Basically, is there a way to |
4 |
> > emulate the old behavior of the "coldplug" init script? This would be |
5 |
> > very useful for our LiveCD builds, since we've lost the ability to do |
6 |
> > "nohotplug" on the command line to disable cold plugging. |
7 |
> |
8 |
> You can re-run /sbin/udevtrigger if you want to. |
9 |
|
10 |
Nice. |
11 |
|
12 |
> But why do it later? Why not just let udev do it at the start of boot? |
13 |
|
14 |
Well, it's pretty simple, we don't always want udev to do it. |
15 |
|
16 |
> What do you gain by delaying this? |
17 |
|
18 |
Delaying? Nothing. |
19 |
|
20 |
Allowing it to be disabled from the kernel command line is what I am |
21 |
looking for, here. Basically, we would disable udev cold plugging by |
22 |
default. Then, when we're actually to the point of being a bit more in |
23 |
control of the system, we check the kernel command line. If "nohotplug" |
24 |
is there, we do nothing. If it isn't, then we'd run /sbin/udevtrigger. |
25 |
This would "coldplug" the devices, but still allow us to retain |
26 |
functionality that we used to have with older coldplug versions. |
27 |
|
28 |
The only issue that we're now facing is that to disable coldplug also |
29 |
disables their services being auto-started, which means that even if we |
30 |
do run udevtrigger later, the services for those devices won't be |
31 |
started. I'm sure there's some solution to this, but this is really why |
32 |
I've been dreading newer udev versions going stable. While the newer |
33 |
versions are better, no doubt, it means we have to rethink how most of |
34 |
the auto-detection and configuration is done on the LiveCD. |
35 |
|
36 |
There have been many times where coldplug tried to load a driver that |
37 |
caused problems for the user, and being able to disable that driver |
38 |
being loaded has allowed them to continue to boot. With a coldplug that |
39 |
cannot be disabled arbitrarily, we cannot do this. |
40 |
|
41 |
-- |
42 |
Chris Gianelloni |
43 |
Release Engineering Strategic Lead |
44 |
Alpha/AMD64/x86 Architecture Teams |
45 |
Games Developer/Council Member/Foundation Trustee |
46 |
Gentoo Foundation |