HEADS UP - 4th loader replaced and /boot structure changed

Matthew Dillon dillon at apollo.backplane.com
Wed Sep 1 01:01:56 PDT 2010

    Today's master has some major changes to the /boot structure:

    * Kernels and modules are no longer installed in /boot/kernel and
      /boot/modules.  Instead /boot/kernel is a directory and the kernel
      and modules are installed in that directory, similar to FreeBSD.

      This allows us to multi-boot different kernels each with their
      own set of modules, avoiding problems when old modules become
      incompatible with new kernels.

      In addition a loader.conf may be placed in each directory for
      localization... for example, allowing a different root volume
      to be specified and thus making it possible to boot a 32 or 64 bit
      kernel via the menu system.

    * The FICL 4th loader/menu has been ripped out.  Making it work
      properly with the new directory structure exceeded my maximum
      frustration level.

      I wrote a new menu system in C from scratch called dloader.  It's
      basically a new frontend to the boot/common code that is already
      supporting the boot system.  We can expand it as needed.

    * The installkernel target will refuse to install if you have not
      updated your /boot via a build/installworld or a recompilation
      and install of /usr/src/sys/boot (be sure to make clean before
      recompiling it!).  This is because the old boot loader will get
      rather confused from the new directory structure.


More information about the Kernel mailing list