Re: Booting a modular kernel through a multiple streams file

Andreas Dilger (adilger@turbolabs.com)
Mon, 17 Dec 2001 12:07:49 -0700


On Dec 17, 2001 19:49 +0100, Otto Wyss wrote:
> > Somebody not attributed wrote:
> > > Well a simple solution would be if Linux supports the multiple streams
> > > file format.

Well "multiple streams file format" is purely a FILESYSTEM issue. When it
is outside of the filesystem, it is an ARCHIVE (e.g. tar, cpio, zip, SHA, etc).
So this whole concept is bogus.

> I don't want to bring in any ...-Design if standard tools are enough! If
> cpio/tar do suffice, then much better. I don't know if they are simple and
> fitting enough to be handled by any boot loader and the kernel. Maybe you
> could elaborate more on this.
>
> You have to admit that a multiple streams file format (regardless which kind)
> would be a good solution to the booting of a modular kernel. Anyway this
> format has to be supported by the kernel itself and in some extend by any
> boot loader.
> So anybody has to write a kernel module for the cpio/tar format and help with
> implementing it into boot loaders. Maybe you could give some help.

Well, the good news is that this whole discussion is moot. Al Viro has
already written a kernel patch which does all of this, and I'm sure he
is just waiting to get it into the 2.5 kernel. It creates an "initramfs"
which is populated from a cpio (or tar, can't remeber) archive attached
to the kernel image.

This does things like BOOTP/DHCP discovery, mount the rootfs, load
modules, etc, all before the root filesystem is mounted. This allows
removing all sorts of junk from the kernel which was there because it
needed to be done before the root filesystem was mounted.

Cheers, Andreas

--
Andreas Dilger
http://sourceforge.net/projects/ext2resize/
http://www-mddsp.enel.ucalgary.ca/People/adilger/

- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/