On 9/20/2019 6:52 PM, Bruce Dubbs via lfs-dev wrote:
On 9/20/19 6:46 PM, DJ Lucas via lfs-dev wrote:
In the book, we currently have the text "Install the modules, if the
kernel configuration uses them:" - this is incorrect. All kernels use
them, whether they are built-in or not, and this step is required to
populate /lib/modules/$(uname -r)/modules.{builtin,dep,order,*}. This
sentence should be changed, but I'm at a loss for the moment.
Suggestions?
AFAIK, /lib/modules/ is not required if everything is built into the
kernel. I get:
$ lsmod
Module Size Used by
I do have /lib/modules/, but I could rename it to test.
It is actually, specifically /lib/modules/$(uname -r)/modules.builtin. I
personally was not aware of this functionality. Apparently, this is the
method employed by modprobe not to fail if some userspace program needs
a module that might be a builtin.
In my case, I'm fiddling with firewalld and hit this (not a) bug:
https://github.com/firewalld/firewalld/issues/430
From '/usr/share/doc/linux-$(uname -r)/kbuild/kbuild.txt':
modules.order
--------------------------------------------------
This file records the order in which modules appear in Makefiles. This
is used by modprobe to deterministically resolve aliases that match
multiple modules.
modules.builtin
--------------------------------------------------
This file lists all modules that are built into the kernel. This is used
by modprobe to not fail when trying to load something builtin.
That said, I'm unsure what happens if you build a kernel without
loadable modules support (of if this is even possible now days).
--DJ
--
http://lists.linuxfromscratch.org/listinfo/lfs-dev
FAQ: http://www.linuxfromscratch.org/faq/
Unsubscribe: See the above information page