Jeremy Katz wrote:
[snip]
Well, you don't need _all_. I've yet to come up with a convincing reason to want the sound drivers for example :)
Error messages read aloud? I've always wanted to hear 'kernel panic!' instead of just reading it :-)

And yes, everywhere is really more like everywhere(*) -- the stock config being "local block devices" but with the ability to expand out and support the more esoteric cases.

Hmmm... if we are realle talking about integrating this _into_ the kernel why not introduce something like <Mi> "Build as module, integrate into initramfs?" into kernel config?

[snip]
No, I favour a completely different approach: Link the required
modules into the kernel. When we run the mkinitrd prg (or whatever it's called) to create
the initrd, we will be detecting the modules which are required
to boot the kernel and mount the rootfs.
If it were now possible to link these modules into the kernel
directly via some 'ld' magic, we could get away with loading
just one kernel image without any initramfs. No modprobe,
nothing. That would be _fast_. And we would be having the
advantage that we could kexec into the 'normal' boot image
with initramfs if this 'single shot' approach doesn't work.

You still have to have an initramfs as you aren't going to have the logic for LVM activation in the kernel. Or to handle resume from hibernate. Or dm-crypt. Etc. So an initramfs is really something akin to a requirement for non-trivial systems. And the speed really isn't a fundamental factor of dealing with an initramfs. I was actually quite surprised by how fast I was able to boot with a dracut-generated initramfs

To be honest I'd really like some magic to tie a module back into the kernel for really fast bootup.

On the other hand, "early-userspace" is necessary as stated. As a further suggestion: Why not restrict initramfs really to the "only mount-/" problem domain. On failures or errors, a fallback ram-image could be used and switchroot'ed into normally like any other root which would then do the job. I think this would solve the busybox/user-needs-shell problem as well, which could reside in the ram-image.


Regards,
Philippe
--
To unsubscribe from this list: send the line "unsubscribe initramfs" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to