Linux 6.7.3 + 545.29.06/550.40.07: ERROR: modpost: GPL-incompatible module nvidia.ko uses GPL-only symbol '__rcu_read_lock'

Is the open kernel module better than the closed ones? In the future it might be temping to use open kernel module to avoid problems with kernel.

Thank you for the patch, seems to works well in Manjaro / Arch with kernels 6.7.3, 6.6.15 and 6.1.76 and nvidia driver 470.223.02.

Hi All,
We are aware of the issue and is being tracked internally via bug 4336331.
Fix will be available in future released drivers.

8 Likes

Thank you. Please release a fix for the 470xx series as well…

Is the open kernel module better than the closed ones? In the future it might be temping to use open kernel module to avoid problems with kernel.

If you’re talking about Nvidia’s official open GPU kernel modules, they work fine, but lack certain key features, the biggest one being the ability to preserve memory during suspend and hibernate.

@amrits Will there be a hotfix release for the beta driver as well or do we have to wait until the next major release?

Liquorix released a 6.7.3 kernel with a patch to solve this. I particularly prefer XanMod, but I will use what I have to keep updated.

hello , how do we exactly patch the driver with this patch , can someone help with a walkthrough , opensuse tumbleweed distro using tkg-kernel 6.7.3

1 Like

(I have no idea what I’m doing)

On Ubuntu 20.04 with the 535.154.05 drivers (from Ubuntu’s repos) I had to apply the patch to files in the /usr/src/nvidia-535.154.05/nvidia/ directory after which DKMS was able to apply the driver correctly during installation of my custom mainline 6.6.15 kernel.

patch < nvidia-drivers-470.223.02-gpl-pfn_valid.patch

(Then manually specifying the path to the files in the patch to be /usr/src/nvidia-535.154.05/nvidia because the .patch is looking for the files to patch in /kernel/common/inc/)

Not sure if there’s a more elegant solution for DKMS/Ubuntu.

For Fedora users, RPM Fusion has updated the akmod-nvidia package with the fixes necessary.

2 Likes
This code change was done on 31st of January 2024 : 

https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git/commit/include/linux/mmzone.h?h=v6.7.3&id=3a01daace71b521563c38bbbf874e14c3e58adb7

Therefore a kernel from after that date will work fine however
the NVidia drivers will just blow up as discussed.

Therefore, and I have tested this, the linux-6.1.76 kernel will cause
the NVidia code to crap out. I have not tested 535.154.05 yet but
I suspect it will blow up also.

However the 6.1.75 Linux kernel seems to offer no problems.

What a surprise? Not really. Some day the NVidia driver devs will
stop using internal API calls and interfaces that are really verboten
in the GPL world. Some day. 

Not today.

1 Like

I have been hitting stability issues recently with Fedora 39, thus reverting to nvidia stable flavor 535.129.03-1.fc39. But that won´t build with latest kernel 6.7.3-200.fc39.x86_64. /sigh
I am afraid akmod-nvidia-535.129.03-1.fc39has not been fixed, it will not build…

2 Likes

Whatever did you do to fix your issue? Trying to use 535 RPM fusion driver fails to build on my server box. 545 is super unstable when trying to use it in conjunction with podman and nvidia ctk so I try to avoid it

In my workloads, which are not really CUDA involving, the 545.29.06 driver has been pretty stable (in Wayland also). The initial R545 driver had issues, but .06 has been a workhorse for me. R550 introduced a handful of graphical issues/quirks so I’ve since reverted to R545 as it’s not a beta driver.

As RPM Fusion serves a few distros, are you using a Fedora-like system or a RHEL-like system?

For me (F39), the kmod-nvidia-3:545.29.06-3.fc39.x86_64 package found in rpmfusion-nonfree-updates works like a charm.

In order for the R535 driver to work , you’ll need to rebuild the SRPM and add the 6.7.3 patch to it:

https://koji.rpmfusion.org/koji/buildinfo?buildID=27075
https://pkgs.rpmfusion.org/cgit/nonfree/nvidia-kmod.git/tree/?h=f39

Confirming that the current rpmfusion Nvidia drivers are indeed broken on F39.
3:545.29.06-3.fc39 does NOT work.

Is it broken overall or specific use cases?

System Details Report (modified)


Hardware Information:

  • Memory: 32.0 GiB
  • Processor: Intel® Core™ i7-6850K × 12
  • Graphics: NVIDIA GeForce GTX 1070
  • Displays: 3: (2) 1920x1200@75, (1) 2564x1440@60

Software Information:

  • OS Name: Fedora Linux 39 (Workstation Edition)
  • OS Type: 64-bit
  • GNOME Version: 45.3
  • Windowing System: Wayland
  • Kernel Version: Linux 6.7.3-200.fc39.x86_64
  • NVIDIA Driver: kmod-nvidia-6.7.3-200.fc39.x86_64-545.29.06-3.fc39.x86_64

RTX 4090
AMD 5900X
128 GB RAM
Fedora 39
Kernel 6.7.3-200.fc39.x86_64

All the problems started after running a routine ‘dnf update’.

Multiple failed attempts at building 545 via akmods. Same error as above.
After removing the rpmfusion nvidia drivers, they are now failing to install altogether because nvidia-kmod-common is now missing?

What happens if you follow these steps?

$ rpm -qa "*nvidia*" | sort
akmod-nvidia-545.29.06-3.fc39.x86_64
kmod-nvidia-6.7.2-200.fc39.x86_64-545.29.06-3.fc39.x86_64
kmod-nvidia-6.7.3-200.fc39.x86_64-545.29.06-3.fc39.x86_64
nvidia-gpu-firmware-20240115-2.fc39.noarch
nvidia-modprobe-545.29.06-1.fc39.x86_64
nvidia-persistenced-545.29.06-1.fc39.x86_64
nvidia-settings-545.29.06-1.fc39.x86_64
xorg-x11-drv-nvidia-545.29.06-2.fc39.x86_64
xorg-x11-drv-nvidia-cuda-545.29.06-2.fc39.x86_64
xorg-x11-drv-nvidia-cuda-libs-545.29.06-2.fc39.x86_64
xorg-x11-drv-nvidia-kmodsrc-545.29.06-2.fc39.x86_64
xorg-x11-drv-nvidia-libs-545.29.06-2.fc39.x86_64
xorg-x11-drv-nvidia-power-545.29.06-2.fc39.x86_64

$ sudo dnf remove "*nvidia*" -x "nvidia-gpu-firmware"
...

# A sanity check I like to do from time to time
$ sudo dracut -fv
...

$ sudo dnf clean all
...

# Output is grepped for nvidia related packages
$ sudo dnf install akmod-nvidia xorg-x11-drv-nvidia-cuda
 akmod-nvidia                              x86_64  3:545.29.06-3.fc39       rpmfusion-nonfree-updates   43 k
 xorg-x11-drv-nvidia-cuda                  x86_64  3:545.29.06-2.fc39       rpmfusion-nonfree-updates  2.1 M
 nvidia-modprobe                           x86_64  3:545.29.06-1.fc39       rpmfusion-nonfree-updates   32 k
 nvidia-persistenced                       x86_64  3:545.29.06-1.fc39       rpmfusion-nonfree-updates   35 k
 nvidia-settings                           x86_64  3:545.29.06-1.fc39       rpmfusion-nonfree-updates  1.6 M
 xorg-x11-drv-nvidia                       x86_64  3:545.29.06-2.fc39       rpmfusion-nonfree-updates  145 M
 xorg-x11-drv-nvidia-cuda-libs             x86_64  3:545.29.06-2.fc39       rpmfusion-nonfree-updates   41 M
 xorg-x11-drv-nvidia-kmodsrc               x86_64  3:545.29.06-2.fc39       rpmfusion-nonfree-updates   46 M
 xorg-x11-drv-nvidia-libs                  x86_64  3:545.29.06-2.fc39       rpmfusion-nonfree-updates   60 M
 xorg-x11-drv-nvidia-power                 x86_64  3:545.29.06-2.fc39       rpmfusion-nonfree-updates  101 k

# Wait a bit for the module to build
$ watch 'rpm -qa "kmod-nvidia*"'

# Reboot
$ sudo systemctl reboot

F39, latest kernel. 3060TI

kmod-nvidia-3:545.29.06-3.fc39.x86_64 package found in rpmfusion-nonfree-updates

Installs and kinda work. Monitors are all borked. Can only set one up unless I want constant restart of display and some with only half of the monitors rendering desktop.

Everything runs like crap.

All start with upgrade from f37 to f38(where it already was poop when updated from kernel-6.5.12-100.fc37.x86_64, with 550 betra drivers to kernel-6.7.3-100.fc38.x86_64 ) and later to F39.

rpm -qa “nvidia” | sort
akmod-nvidia-545.29.06-3.fc39.x86_64
kmod-nvidia-545.29.06-3.fc39.x86_64
kmod-nvidia-6.7.3-200.fc39.x86_64-545.29.06-3.fc39.x86_64
nvidia-kmod-common-545.29.06-1.fc39.noarch
nvidia-modprobe-545.29.06-1.fc39.x86_64
xorg-x11-drv-nvidia-kmodsrc-545.29.06-2.fc39.x86_64

Think I found the issue. The latest 545 Nvidia drivers are in a different repo than the standard rpmfusion.
This location: Index of /nonfree/fedora/nvidia-driver/39/x86_64 contains all the correct files, while the standard rpmfusion repo at: Index of /nonfree/fedora/updates/39/x86_64 is missing some files.

So I downloaded the RPMs manually and installed them locally. That seemed to work.
However, a bit of a Pyrrhic victory because the video glitch is back with a vengeance

Thanks for the pointers @mroche .

@pewfews Can you share where the nvidia-kmod-common package is coming from? It shouldn’t be necessary anymore, as it’s now provided by the xorg-x11-dev-nvidia set.

@jason.tang1 Did you have the nvidia-driver repo and rpmfusion-nonfree* repos enabled at the same time? I took a cursory glance through the RPM Fusion repos themselves and didn’t see anything out of the ordinary, but I accept I may have missed something.

1 Like