Messages in this thread | | | Date | Wed, 16 Jul 2008 06:42:29 +0200 | From | Willy Tarreau <> | Subject | Re: [GIT *] Allow request_firmware() to be satisfied from in-kernel, use it in more drivers. |
| |
On Tue, Jul 15, 2008 at 08:43:07PM -0400, Jeff Garzik wrote: > Linus Torvalds wrote: > > > >On Wed, 16 Jul 2008, Frans Pop wrote: > >>Where did you get this strange notion that mkinitrd is the _only_ (your > >>emphasis) thing people use? > > > >Heh. Maybe from the fact that I don't personally use modules or initrd at > >all, and have no interest in doing so ;) > > > >Ok, so people use other things. Grr. I guess we can't just require updated > >tools, because we don't know what the tools are. > > Yes, that's part of the problem :/ > > Everybody seems to love rolling their own stuff in this area, partly > necessitated I suppose by the wide variety of ways to boot on various > platforms.
Exactly. To give you an idea, I have a lot of servers running on a "firmware" which consists in two parts : - a bzImage containing an initramfs with modules and a few scripts - an initrd which is in fact the rootfs
When the kernel boots, it mounts the initrd, does a pivot_root and mounts its modules into /boot/$(uname -r). All my kernels run modules from /boot and not from /lib/modules, because it makes them more convenient to add and remove. So /lib/modules is just a symlink to /boot.
The above process is very convenient, as it is compatible with a lot of boot methods : hard disk, CDROM, USB stick, PXE, etc...
And moreover, I can have multiple kernels with only one rootfs (SMP, etc). Introducing firmware there would mean a major thinking and rework of the build (and possibly boot) process. The least invasive would probably be to stuff them next to the modules in $(uname -r)/firmware, but even then, it will take a lot of time to switch to a new system.
And judging from what I see around, I'm far from being the only one not using mkinitrd.
Willy
| |