Current-Users archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: GENERIC kernel "modules" implementation info?



> On 21 Dec 2009, at 16:20, yancm%sdf.lonestar.org@localhost wrote:
>> I just built a -current i386 GENERIC update in a VM and was surprised
>> that reboot failed because I had no ffs support.
>
> That is because you didn't read "src/UPDATING" which is the recommended
> procedure before upgrading to NetBSD-current.

OK, properly chastised! Just turned 49 and got whacked with the RTFM
newspaper roll...again...LOL! 8-)

I do glance at UPDATING ... but usually only when I
have build troubles, I'll try to be more diligent...maybe 8-}

I'll quote the pertinent section and follow with some questions.

"20081122:
        On i386, various kernel options(4) in GENERIC including
        file systems have been disabled and moved into kernel modules.
        Before trying a new GENERIC kernel, you have to prepare the
        following files as well as a new GENERIC kernel:

        - build and install kernel modules from src/sys/modules

        - install the latest bootloader, which will load a module
          for the file system from which the kernel is loaded automatically

        If you have to load your kernel from a file system which is not of
        the same type as the root file system, you have to load the necessary
        file system module manually on the boot prompt or in the boot.cfg
file."

It appears the kernel modules are built automagically from build.sh.
The bootloader files are also apparently built and automagically
populated into /usr/mdec during install.

Why isn't the secondary bootloader (/boot) updated as part of the
install sequence also? Or at least checked and a warning issued
in the postinstall checks? This just seems like an avoidable
gotcha.

I updated my /boot (from 2006!) and rebuilt the GENERIC kernel and
we booted properly.

If I understand correctly, bootloader loads the correct file system
module for the kernel in the root fs. The kernel then loads additional
modules on it's own as needed.

thanks for the good work!
--gene





Home | Main Index | Thread Index | Old Index