Kernel – 6.8 Released – OK with latest NVIDIA and Patched VMware..
Kernel 6.8 is out, and brief details are here: https://lkml.iu.edu/hypermail/linux/kernel/2403.1/01820.html
As expected, the latest NVIDIA driver 550.54.14 and VMware 17.5.1 (patched) compile and load/run OK. The VMware patchset is at https://github.com/mkubecek/vmware-host-modules/tree/workstation-17.5.1
If you are running GCC 14 the NVIDIA source needs to be patched – see https://rglinuxtech.com/?p=3213
Robert Gadsdon. March 10th 2024.
NVIDIA driver 470.223.02 seems broken with the 6.8 kernel – build fails with undeclared symbol “DRM_UNLOCKED”
2024/04/06 21:12:06 akmodsbuild: gcc -Wp,-MMD,/tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/.nvidia-drm-gem.o.d -nostdinc -I./arch/x86/include -I./arch/x86/include/generated -I./include -I./arch/x86/include/uapi -I./arch/x86/include/generated/uapi -I./include/uapi -I./include/generated/uapi -include ./include/linux/compiler-version.h -include ./include/linux/kconfig.h -include ./include/linux/compiler_types.h -D__KERNEL__ -fmacro-prefix-map=./= -std=gnu11 -fshort-wchar -funsigned-char -fno-common -fno-PIE -fno-strict-aliasing -mno-sse -mno-mmx -mno-sse2 -mno-3dnow -mno-avx -fcf-protection=branch -fno-jump-tables -m64 -falign-jumps=1 -falign-loops=1 -mno-80387 -mno-fp-ret-in-387 -mpreferred-stack-boundary=3 -mskip-rax-setup -mtune=generic -mno-red-zone -mcmodel=kernel -Wno-sign-compare -fno-asynchronous-unwind-tables -mindirect-branch=thunk-extern -mindirect-branch-register -mindirect-branch-cs-prefix -mfunction-return=thunk-extern -fno-jump-tables -mharden-sls=all -fpatchable-function-entry=16,16 -fno-delete-null-pointer-checks -O2 -fno-allow-store-data-races -fstack-protector-strong -ftrivial-auto-var-init=zero -fno-stack-clash-protection -pg -mrecord-mcount -mfentry -DCC_USING_FENTRY -falign-functions=16 -fstrict-flex-arrays=3 -fno-strict-overflow -fno-stack-check -fconserve-stack -Wall -Wundef -Werror=implicit-function-declaration -Werror=implicit-int -Werror=return-type -Werror=strict-prototypes -Wno-format-security -Wno-trigraphs -Wno-frame-address -Wno-address-of-packed-member -Wmissing-declarations -Wmissing-prototypes -Wframe-larger-than=2048 -Wno-main -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-dangling-pointer -Wvla -Wno-pointer-sign -Wcast-function-type -Wno-stringop-overflow -Wno-array-bounds -Wno-alloc-size-larger-than -Wimplicit-fallthrough=5 -Werror=date-time -Werror=incompatible-pointer-types -Werror=designated-init -Wenum-conversion -Wno-unused-but-set-variable -Wno-unused-const-variable -Wno-restrict -Wno-packed-not-aligned -Wno-format-overflow -Wno-format-truncation -Wno-stringop-truncation -Wno-missing-field-initializers -Wno-type-limits -Wno-shift-negative-value -Wno-maybe-uninitialized -Wno-sign-compare -g -I/tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/common/inc -I/tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64 -Wall -MD -Wno-cast-qual -Wno-error -Wno-format-extra-args -D__KERNEL__ -DMODULE -DNVRM -DNV_VERSION_STRING=\”470.223.02\” -Wno-unused-function -Wuninitialized -fno-strict-aliasing -mno-red-zone -mcmodel=kernel -DNV_UVM_ENABLE -Werror=undef -DNV_SPECTRE_V2=0 -DNV_KERNEL_INTERFACE_LAYER -I/tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm -UDEBUG -U_DEBUG -DNDEBUG -DNV_BUILD_MODULE_INSTANCES=0 -DMODULE -DKBUILD_BASENAME='”nvidia_drm_gem”‘ -DKBUILD_MODNAME='”nvidia_drm”‘ -D__KBUILD_MODNAME=kmod_nvidia_drm -c -o /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-gem.o /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-gem.c
2024/04/06 21:12:06 akmodsbuild: In file included from /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-drv.c:60:
2024/04/06 21:12:06 akmodsbuild: /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-drv.c:748:40: error: ‘DRM_UNLOCKED’ undeclared here (not in a function); did you mean ‘VM_LOCKED’?
2024/04/06 21:12:06 akmodsbuild: 748 | DRM_RENDER_ALLOW|DRM_UNLOCKED),
2024/04/06 21:12:06 akmodsbuild: | ^~~~~~~~~~~~
2024/04/06 21:12:06 akmodsbuild: ./include/drm/drm_ioctl.h:155:26: note: in definition of macro ‘DRM_IOCTL_DEF_DRV’
2024/04/06 21:12:06 akmodsbuild: 155 | .flags = _flags, \
2024/04/06 21:12:06 akmodsbuild: | ^~~~~~
2024/04/06 21:12:06 akmodsbuild: make[3]: *** [scripts/Makefile.build:243: /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-drv.o] Error 1
2024/04/06 21:12:06 akmodsbuild: make[3]: *** Waiting for unfinished jobs….
2024/04/06 21:12:06 akmodsbuild: /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-crtc.c: In function ‘plane_req_config_update’:
2024/04/06 21:12:06 akmodsbuild: /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-crtc.c:89:9: warning: unused variable ‘ret’ [-Wunused-variable]
2024/04/06 21:12:06 akmodsbuild: 89 | int ret = 0;
2024/04/06 21:12:06 akmodsbuild: | ^~~
2024/04/06 21:12:06 akmodsbuild: /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-crtc.c: In function ‘nv_drm_plane_atomic_set_property’:
2024/04/06 21:12:06 akmodsbuild: /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64/nvidia-drm/nvidia-drm-crtc.c:371:32: warning: unused variable ‘nv_drm_plane_state’ [-Wunused-variable]
2024/04/06 21:12:06 akmodsbuild: 371 | struct nv_drm_plane_state *nv_drm_plane_state =
2024/04/06 21:12:06 akmodsbuild: | ^~~~~~~~~~~~~~~~~~
2024/04/06 21:12:06 akmodsbuild: make[2]: *** [/usr/src/kernels/6.8.4-200.fc39.x86_64/Makefile:1939: /tmp/akmodsbuild.BtIEQCzc/BUILD/nvidia-470xx-kmod-470.223.02/_kmod_build_6.8.4-200.fc39.x86_64] Error 2
2024/04/06 21:12:06 akmodsbuild: make[1]: *** [Makefile:252: __sub-make] Error 2
2024/04/06 21:12:06 akmodsbuild: make[1]: Leaving directory ‘/usr/src/kernels/6.8.4-200.fc39.x86_64’
2024/04/06 21:12:06 akmodsbuild: make: *** [Makefile:80: modules] Error 2
2024/04/06 21:12:06 akmodsbuild: error: Bad exit status from /var/tmp/rpm-tmp.yBpuad (%build)
2024/04/06 21:12:06 akmodsbuild:
2024/04/06 21:12:06 akmodsbuild: RPM build errors:
2024/04/06 21:12:06 akmodsbuild: Bad exit status from /var/tmp/rpm-tmp.yBpuad (%build)
Solution identified to above (pulled missing declaration from previous kernel’s header file)
https://forums.developer.nvidia.com/t/470-223-02-akmod-fails-to-build-driver-after-kernel-update-to-6-8-4-fedora-39/288745/2