Package: initramfs-tools
Version: 0.148.3

* summary

update-initramfs no longer includes /lib/modules/<kver>/updates
directory, this means out of tree drivers are not loaded during boot.
I could not find reference to this behaviour change in release notes

* update-initramfs in debian 12 (initramfs-tools 0.142) includes the
updates directory when building initrd.img, example:

root@testhost:~# update-initramfs -u -v 2>&1 > /root/update.1

root@testhost:~# grep sfc /root/update.1
Adding module 
/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc/falcon/sfc-falcon.ko.xz
Adding module /lib/modules/6.12.51-u1-amd64/updates/dkms/sfc.ko.xz

root@testhost:~# lsinitramfs /boot/initrd.img-6.12.51-u1-amd64 | grep sfc
usr/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc
usr/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc/falcon
usr/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc/falcon/sfc-falcon.ko
usr/lib/modules/6.12.51-u1-amd64/updates/dkms/sfc.ko


Reference : https://man7.org/linux/man-pages/man5/depmod.d.5.html
Behaviour aligns to:  By default, depmod will give a higher priority
to a directory with the name updates


* update-initramfs in debian 13 (initramfs-tools 0.148.3) does not
include the updates directory, this means the dkms modules are not
loaded correctly at boot.

# modules are present
root@testhost:~# find /lib/modules/6.12.51-u1-amd64/ -type f | grep sfc
/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc/falcon/sfc-falcon.ko.xz
/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc/sfc.ko.xz
/lib/modules/6.12.51-u1-amd64/updates/dkms/sfc_char.ko.xz
/lib/modules/6.12.51-u1-amd64/updates/dkms/sfc_resource.ko.xz
/lib/modules/6.12.51-u1-amd64/updates/dkms/sfc.ko.xz


root@testhost:~# update-initramfs -uv 2>&1 > /root/update.1
root@testhost:~# grep sfc /root/update.1
<nothing>

# eventual initrd.img does not include the modules
root@testhost:~# lsinitramfs /boot/initrd.img-6.12.51-u1-amd64 | grep sfc
usr/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc
usr/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc/falcon
usr/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc/falcon/sfc-falcon.ko.xz
usr/lib/modules/6.12.51-u1-amd64/kernel/drivers/net/ethernet/sfc/sfc.ko.xz


* other
A very similar issue was reported here on ubutnu 24.02 ( I believe deb13 based)
https://discourse.ubuntu.com/t/update-initramfs-ignores-dkms-module/63923


* workaround
My current workaround is to install dracut fully.

Reply via email to