Kernel – 6.3-rc1 – OK with Latest VMware, Breaks NVIDIA – Fix Possible..
Kernel 6.3-rc1 is out, and details are here: https://lkml.iu.edu/hypermail/linux/kernel/2303.0/04362.html
The latest (patched) VMware 17.0.1 is OK, but NVIDIA 530.30.02 fails to compile:
…………………………………
/home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.c: In function ‘nvidia_mmap_numa’:
/home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.c:461:19: error: assignment of read-only member ‘vm_flags’
461 | vma->vm_flags |= VM_MIXEDMAP;
| ^~
/home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.c: In function ‘nvidia_mmap_helper’:
/home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.c:606:23: error: assignment of read-only member ‘vm_flags’
606 | vma->vm_flags |= VM_IO | VM_PFNMAP | VM_DONTEXPAND;
| ^~
/home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.c:673:23: error: assignment of read-only member ‘vm_flags’
673 | vma->vm_flags |= (VM_IO | VM_LOCKED | VM_RESERVED);
| ^~
/home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.c:674:23: error: assignment of read-only member ‘vm_flags’
674 | vma->vm_flags |= (VM_DONTEXPAND | VM_DONTDUMP);
| ^~
/home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.c:680:23: error: assignment of read-only member ‘vm_flags’
680 | vma->vm_flags &= ~VM_WRITE;
| ^~
/home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.c:681:23: error: assignment of read-only member ‘vm_flags’
681 | vma->vm_flags &= ~VM_MAYWRITE;
| ^~
make[2]: *** [scripts/Makefile.build:252: /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia/nv-mmap.o] Error 1
make[1]: *** [Makefile:2028: /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel] Error 2
make[1]: Leaving directory ‘/usr/src/linux-6.3-rc1’
make: *** [Makefile:82: modules] Error 2
There is a kernel 6.3 patch for an earlier driver version available, and this can be modified for the latest driver version: https://gist.github.com/joanbm/d10e9cbbbb8e245b6e7e27b2db338faf
I have done this, and the driver now compiles successfully, and appears to load/run OK….
……………………….
ld -r -o /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-modeset/nv-modeset-interface.o /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-modeset/nvidia-modeset-linux.o /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-modeset/nv-kthread-q.o
MODPOST /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/Module.symvers
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia.ko
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-uvm.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-uvm.ko
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-modeset.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-modeset.ko
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-drm.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-drm.ko
CC [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-peermem.mod.o
LD [M] /home/rgadsdon/NVIDIA-Linux-x86_64-530.30.02/kernel/nvidia-peermem.ko
make[1]: Leaving directory ‘/usr/src/linux-6.3-rc1’
Robert Gadsdon. March 4th 2023
Comments
Kernel – 6.3-rc1 – OK with Latest VMware, Breaks NVIDIA – Fix Possible.. — No Comments