Kernel – 5.19 Pre-testing – Breaks NVIDIA and VMware.. Updated…
Kernel 5.19-rc1 should be released in a weeks time, but many changes have already been submitted.. I created a 5.19-rc0 (git) version from changes up to May 29th, and the following are the test results – Update: Changes also tested OK with June 3rd git version of 5.19-rc..(note that any changes were made using logic, rather than coding skills, so these may not be technically correct!):
NVIDIA:
Tested with driver 515.43.04, and the compile fails:
………………
/home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-drm/nvidia-dma-resv-helper.h:72:5: error: implicit declaration of function ‘dma_resv_add_excl_fence’; did you mean ‘nv_dma_resv_add_excl_fence’? [-Werror=implicit-function-declaration]
72 | dma_resv_add_excl_fence(obj, fence);
| ^~~~~~~~~~~~~~~~~~~~~~~
| nv_dma_resv_add_excl_fence
………………….
I managed to fix this by editing:
NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-drm/nvidia-dma-resv-helper.h
Line 72 – change
nv_dma_resv_add_excl_fence
to
dma_resv_add_excl_fence
and:
NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-drm/nvidia-drm-prime-fence.c
Line 502 – change
nv_dma_resv_add_excl_fence
to
dma_resv_add_excl_fence
Then the driver compiles successfully, but with many warnings (some due to gcc 12.1.1…)
…………………….
ld -r -o /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-modeset/nv-modeset-interface.o /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-modeset/nvidia-modeset-linux.o /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-modeset/nv-kthread-q.o
MODPOST /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/Module.symvers
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-drm.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-drm.ko
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-modeset.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-modeset.ko
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-peermem.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-peermem.ko
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-uvm.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia-uvm.ko
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-515.43.04/kernel/nvidia.ko
make[1]: Leaving directory ‘/usr/src/linux-5.19-rc0’
Testing with KDE/Plasma, everything seems to work OK..
VMware:
Tested with latest 5.18-patched version of 16.2.3. vmmon compiles OK, but vmnet fails:
…………………….
LD [M] /tmp/modconfig-hZeX0D/vmnet-only/vmnet.o
MODPOST /tmp/modconfig-hZeX0D/vmnet-only/Module.symvers
ERROR: modpost: “csum_and_copy_to_user” [/tmp/modconfig-hZeX0D/vmnet-only/vmnet.ko] undefined!
make[2]: *** [scripts/Makefile.modpost:134: /tmp/modconfig-hZeX0D/vmnet-only/Module.symvers] Error 1
make[1]: *** [Makefile:1753: modules] Error 2
make[1]: Leaving directory ‘/usr/src/linux-5.19-rc0’
make: *** [Makefile:117: vmnet.ko] Error 2
make: Leaving directory ‘/tmp/modconfig-hZeX0D/vmnet-only’
Unable to install all modules. See log for details.
This would appear to be caused by the following kernel code change:
“[PATCH] net: unexport csum_and_copy_{from,to}_user
csum_and_copy_from_user and csum_and_copy_to_user are exported by
a few architectures, but not actually used in modular code. Drop
the exports.”
See https://lkml.org/lkml/2022/4/21/214 for details..
Obviously there will be many further changes to come, but this gives an early-warning..
Robert Gadsdon. May 29th 2022.
Updated June 3rd, to include missing code line change for NVIDIA fix..
Comments
Kernel – 5.19 Pre-testing – Breaks NVIDIA and VMware.. Updated… — No Comments