Hi list,

As of Pacman 7.0.0, we can have makepkg create debug packages for our kernels, however...

Compressed modules are not scanned, meaning either we continue to use INSTALL_MOD_STRIP=1 (throwing away debuginfo for all modules), we disable compression, or we have to enhance makepkg further.

For reference, without module compression, the package size of linux drops from 135 MiB to 98 MiB and its installed size rises from 135 MiB to 562 MiB.

Debian has been compressing their kernel modules since last year. Instead of splitting debuginfo, they install unstripped modules into /usr/lib/debug/: https://salsa.debian.org/kernel-team/linux/-/commit/e8b64e4b4318aaaf7222f47922c8dfe91b1dd869

Fedora & RHEL do not compress kernel modules, for the same reason of incompatibility with split debuginfo: https://bugzilla.redhat.com/show_bug.cgi?id=1349651

In addition, with compression disabled, the split debuginfo step of packaging linux takes 1½ hours on our build server, which is less than optimal. From what I can tell, that time is spent in the # create any needed hardlinks loop, causing runtime to explode quadratically (amount of stripped files × amount of files in the package).

When the kernel is built with module compression, it also adds support for decompressing modules with the selected compression without help from kmod. This seems to be needed in some edge cases, so reënabling compression wouldn't be as easy as adding a module compression stage to makepkg. Debian ran into problems when they missed enabling this support: https://salsa.debian.org/kernel-team/linux/-/merge_requests/980

The issue tracking split debug is at
https://gitlab.archlinux.org/archlinux/packaging/packages/linux/-/issues/2

The MR to test split debug is at
https://gitlab.archlinux.org/archlinux/packaging/packages/linux/-/merge_requests/3

It would be nice to have full debuginfo available.

Greetings,
Jan