Hello,
the out-of-tree kernel modules built with latest master have broken "vermagic" 
and thus cannot be loaded.

The patch 
https://git.yoctoproject.org/poky/commit/?id=bb0f9e87700aa40ec8db880ede3c018c1d055786
added to meta/classes-recipe/kernel-arch.bbclass:
        export LOCALVERSION ?= "${KERNEL_LOCALVERSION}"
so when somebody sets the KERNEL_LOCALVERSION, the kernel is build with this 
suffix. So far so good.

The problem is that the "make-mod-scripts" doesn't know the 
KERNEL_LOCALVERSION, so it does not set the LOCALVERSION.
When the LOCALVERSION is not set, one suffix used to build the kernel is 
missing, the module "vermagic" doesn't match the kernel and the out-of-tree 
modules fail to load.
For example, after building the kernel the 
"kernel-build-artifacts/include/generated/utsrelease.h" contains 
"6.1.33-g8f7f371be2", however after running "make-mod-scripts" it's only 
"6.1.33".

One solution to this would be to store the KERNEL_LOCALVERSION somewhere and 
then restore it by the "make-mod-scripts" to make sure the build environment is 
initialized properly. I am just not sure where is the right storage for this.


Petr

-=-=-=-=-=-=-=-=-=-=-=-
Links: You receive all messages sent to this group.
View/Reply Online (#184590): 
https://lists.openembedded.org/g/openembedded-core/message/184590
Mute This Topic: https://lists.openembedded.org/mt/100240236/21656
Group Owner: openembedded-core+ow...@lists.openembedded.org
Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub 
[arch...@mail-archive.com]
-=-=-=-=-=-=-=-=-=-=-=-

Reply via email to