cvs commit: src/etc Makefile src/share/mk src/sys/kern kern_linker.c src/sys/boot/common help.common loader.8 module.c src/sys/boot/forth loader-bootp.conf loader.conf src/sys/conf src/etc/mtree BSD.root.dist

YONETANI Tomokazu qhwt+dfly at
Wed Sep 3 05:08:48 PDT 2008

On Mon, Sep 01, 2008 at 12:39:49PM -0700, Matthew Dillon wrote:
>   NOTE: FreeBSD uses /boot/kernel/{kernel,modules}.  We will not be
>   doing that.  To expand into multiple kernels our intention is to use
>   /boot/kernel.NAME and /boot/modules.NAME instead, which reduces the
>   directory level clutter.

One slight disadvantage to this scheme is you need to change two variables
to switch between kernels in the boot loader:
  set kernel="kernel.NAME"
  set module_path="/boot;/boot/modules.NAME"

so it's prone to booting with wrong combination of kernel and modules.

Before this change, I could install the kernel and modules under, say,
/TEST using $DESTDIR, and could switch to it by changing module_path
in the boot loader:
  set module_path="/TEST;/TEST/modules"

Now if I set $DESTDIR on installkernel, kernel and modules get installed
to $DESTDIR/boot/kernel and $DESTDIR/boot/modules, so this is probably
not what you want if you have a separate /boot partition.

Oh, and if I remember correctly, FreeBSD keeps kernel and modules
in the same directory, which simplifies the module_path.


More information about the Commits mailing list