Christoph Hellwig wrote:
On Mon, Oct 22, 2007 at 04:32:19PM +0600, Alexander E. Patrakov wrote:
That's wrong. You can load firmware from the initramfs even if the
driver is built in. There is no valid reason why a driver shouldn't
be allowed to be built in.
Could you please explain how this is supposed to work?
As far as I understand, the kernel initializes all built-in drivers, and
only then starts /init in initramfs (which is then supposed to start
udevd and load firmware) - but that's too late.
populate_rootfs is a rootfs_initcall which happens before all the driver
initcalls.
Correct, but irrelevant. The firmware indeed gets unpacked to rootfs
before all driver initcalls, but stays as a dead weight during them,
because udev (started by /init, which happens in init_post() called by
kernel_init() after all initcalls) is needed to load this firmware.
Yes, there is a call to usermodehelper_init() before the initcalls in
do_basic_setup(), this does mean that firmware can be loaded by means of
the old and obsolete /sbin/hotplug mechanism, but who has /sbin/hotplug now?
--
Alexander E. Patrakov
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
[Index of Archives]
[Kernel Newbies]
[Netfilter]
[Bugtraq]
[Photo]
[Stuff]
[Gimp]
[Yosemite News]
[MIPS Linux]
[ARM Linux]
[Linux Security]
[Linux RAID]
[Video 4 Linux]
[Linux for the blind]
[Linux Resources]