Morello Linux missing /lib/modules

I am running

Linux morello 6.7.0-g96c45a786534 #1 SMP PREEMPT Tue Apr 30 17:43:10 UTC 2024 aarch64 GNU/Linux

and I have two problems:

  1. There seems to be no kernel-headers package available for download.
  2. The entire /lib/modules directory is missing.  When I "lsmod," it shows nothing.  Searching for a modules directory turns up nothing.

I'm guessing this is a custom-compiled kernel.  How can I get the modules for it?  Thanks!

Parents
  • That's right, the kernel is our own fork with support for Morello and pure-capability userspace: https://git.morello-project.org/morello/kernel/linux/

    I should first note that only the CONFIG options in our trimmed-down defconfig are supported, see the Morello kernel documentation for more information. This defconfig builds no loadable module, which is why /lib/modules is empty on Morello Linux.

    That being said, you are free to experiment building and loading extra modules. You can get started building the kernel on your Morello board using the instructions at the bottom of this page (ignoring anything Docker-related): https://sdk.morello-project.org/docs/linux/

    Once the kernel is built, edit the config as desired and build the modules:

    make modules
    make modules_install

    This should install the modules in the right location and modprobe should be able to pick them up. Once again I'll note that this is untested, it should work in principle but no guarantee.

    As to the kernel headers, you may build them as well (make headers_install), but note that they are already provided in the Morello SDK (under /morello/usr/include/).

Reply
  • That's right, the kernel is our own fork with support for Morello and pure-capability userspace: https://git.morello-project.org/morello/kernel/linux/

    I should first note that only the CONFIG options in our trimmed-down defconfig are supported, see the Morello kernel documentation for more information. This defconfig builds no loadable module, which is why /lib/modules is empty on Morello Linux.

    That being said, you are free to experiment building and loading extra modules. You can get started building the kernel on your Morello board using the instructions at the bottom of this page (ignoring anything Docker-related): https://sdk.morello-project.org/docs/linux/

    Once the kernel is built, edit the config as desired and build the modules:

    make modules
    make modules_install

    This should install the modules in the right location and modprobe should be able to pick them up. Once again I'll note that this is untested, it should work in principle but no guarantee.

    As to the kernel headers, you may build them as well (make headers_install), but note that they are already provided in the Morello SDK (under /morello/usr/include/).

Children
No data