Re: Virtual(?) kernel root

Kari Hurtta (hurtta@leija.mh.fmi.fi)
Sun, 28 Oct 2001 10:25:27 +0200 (EET)


<...>
> The key point is in fact that there is the idea of a virtual kernel
> root, with some pseudo fs already set:
>
> /
> |
> --/dev
> |
> --/kbin
> |
> --/proc
>
> The "kernel" can be used via an interface that could be, for example, a
> simple interface for debugging purpose, or a simple interface to change
> the boot parameters.
>
> Supplementary resources can be mounted on the kernel root (what is
> called "root fs") with the difference that the kernel root virtual fs
> stays always _on top_ : non kernel root fs don't mask the only root (the
> kernel one), they just add resources to the root directory.
>
> The advantages?
>
> There is no more root problem for kernel threads, since
> kernel threads run with the reference of the inchanged kernel root, the
> common "root fs" being simply mounted or unmounted. No more "sliding
> carpet" problem.
>
> One can test or question the kernel via a simple interface for debugging
> purposes. Not mounting supplementary resources doesn't create a panic,
> but leave a bare bones kernel, giving for example the choice to the user
> to give boot parameters.
>
> The /dev (this is already the case with devfs) doesn't prevent from
> mounting the "root" ro (for example when syslog tries to access a device
> file created at run time).
>
> Has an equivalent scheme being already discussed?

On linux/fs/namespace.c there is following comment: (from linux 2.4.12)

/*
* Absolutely minimal fake fs - only empty root directory and nothing else.
* In 2.5 we'll use ramfs or tmpfs, but for now it's all we need - just
* something to go with root vfsmount.
*/
<...>
static DECLARE_FSTYPE(root_fs_type, "rootfs", rootfs_read_super, FS_NOMOUNT);

But I do not think that that comment refers to equivalent scheme
than what you are proposing.

-- 
          /"\                           |  Kari 
          \ /     ASCII Ribbon Campaign |    Hurtta
           X      Against HTML Mail     |
          / \                           |
-
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/