
On 02.06.2021 03:05, Joe Salmeri wrote:
Hi Ludwig,
Ok, I fixed the problem on my system but it looks like I found something missed in the kernel source packages.
Here is the issue:
20210527 installs kernel 5.12.4-2 with
/usr/lib/modules/5.12.4-2-default/build as a symlink to ../../../usr/src/linux-5.12.4-2-obj/x86_64/default
That symlink is bad and should be to
../../../../usr/src/linux-5.12.4-2-obj/x86_64/default
Since it was a new kernel install, it seems to me that it would not be a UsrMerge bug and instead would be a bug in the kernel-source package.
It is UsrMerge fallout. kernel-default-devel postinstall creates symlink to /usr/src/linux-$version-obj relative to /lib/modules. The link was correct at the time it was created. Then /lib/modules was moved into /usr which means either "/usr" is now redundant or one extra directory level is missing. kernel package will continue to create correct links on new install *after* UsrMerge but you apparently were unlucky to have kernel installed before it happened. UsrMerge is implemented in filesystem package. Check /var/log/zypp/history order in which kernel-default-devel and filesystem packages were installed.
After recreating the correct symlink using
cd /usr/lib/modules/5.12.4-2-default ln -s ../../../../usr/src/linux-5.12.4-2-obj/x86_64/default build
vmware player 16.1.1 was then able to recompile the vmware kernel modules successfully.
I checked the prior kernel source symlink in /usr/lib/modules/5.12.4-1-default/build and found that it too was wrong so that appears to be something that the UsrMerge migration missed.
Again - link *was* correct when it has been first created. And yes, it must be adjusted during UsrMerge. I suspect it is just tip of iceberg. How many relative links are there?
Please let me know if you need any other information.
Open bug report, if you can confirm that kernel-default-devel was installed first before filesystem package it would be great.