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

Reply via email to