You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
CONFIG_DEBUG_INFO_BTF_MODULES is enabled on most/all void kernels, and
thus pahole is used when generating BTF information during compilation of
external modules. on cross-built kernels, the absence of pahole will
remove CONFIG_DEBUG_INFO_BTF_MODULES from
/usr/src/kernel-headers-$version/include/generated/autoconf.h when
the dkms kernel.d hook runs for the first time (because cross-built
kernels have their host tools removed).
When this is removed, part of the module struct in include/linux/module.h
is missing, resulting in a mismatch in the size of the __this_module
struct (.gnu.link_once.this_module section of the .ko) in external
modules of exactly 64 bytes.
struct module {
// ...
#ifdef CONFIG_DEBUG_INFO_BTF_MODULES
unsigned int btf_data_size;
void *btf_data;
#endif
// ...
}
fixesvoid-linux/void-packages#51005void-linux/void-packages@98f0d74
System Info
Void 6.8.12_2 aarch64-glibc
Package(s) Affected
linux6.8 at minimum, probably other
linux6.*
kernels (rpi-kernel is not affected)if the kernel is built natively, this issue does not occur
Expected behaviour
externally-built (dkms or other mechanism) modules load successfully
Actual behaviour
dmesg:
Steps to reproduce
Notes
Error message introduced by https://lore.kernel.org/lkml/ZBuShv1hx03WmzH4@bombadil.infradead.org/T/
The text was updated successfully, but these errors were encountered: