Failed to load nVidia drivers after 33 to 35 upgrade

My first post here - please be gentle!

I have just done an upgrade from Fedora 33 to Fedora 35.

A few minor issues:
Lost the hostname - easily fixed.
Switched to Gnome from my usual KDE - easily fixed.

Main issue is that the nVidia driver from the rpmfusion repositories fails to load.

modprobe nvidia

modprobe: FATAL: Module nvidia not found in directory /lib/modules/5.15.10-200.fc35.x86_64

I have the same names of nvidia files under /lib/modules for both 5.15.10-200.fc35.x86_64 and 5.14.18-100.fc33.x86_64, so not clear what is missing. Looks like akmod-nvidia build drivers against the upgraded kernel.

Struggling with one monitor at 1024x768 when I am used to two monitors at 1920x1200 !!

Thanks for any help – Peter

1 Like

Hi, what is your Nvidia card series? If you’re using legacy Nvidia driver like mine (340xx), most likely it will failed to rebuilt on newer kernel if you installed Nvidia driver from RPMFusion or from Nvidia official page. But there a patch here and how to applied it.

But if you’re using newer Nvidia series, maybe you could try to remove and reinstall it again. Or just remove it and use autoinstaller by @t0xic0der here.

1 Like

Thanks for the reply.

A bit more information. This is a Lenovo P50 Thinkpad, “NVIDIA Corporation GM107GLM [Quadro M1000M] (rev a2)” card, and I am using the 495 driver.

I am not quite as frustrated as yesterday, as I have booted off the older FC33 kernel, and the twin monitors are working fine at my usual resolution!

I am not familiar with how to debug this type of issue, as I have been using the rpmfusion repositories for quite some years, and I’ve forgotten how it all hangs together, with akmod etc

It looks as if the driver has built OK, as I see the same named files in /lib/modules for old and new kernels:

cd /lib/modules
find . -name \*nvidia\*|egrep "18|5.15"|fgrep -v kernel
./5.14.18-100.fc33.x86_64/extra/nvidia
./5.14.18-100.fc33.x86_64/extra/nvidia/nvidia-drm.ko
./5.14.18-100.fc33.x86_64/extra/nvidia/nvidia-modeset.ko
./5.14.18-100.fc33.x86_64/extra/nvidia/nvidia-peermem.ko
./5.14.18-100.fc33.x86_64/extra/nvidia/nvidia-uvm.ko
./5.14.18-100.fc33.x86_64/extra/nvidia/nvidia.ko

./5.15.10-200.fc35.x86_64/extra/nvidia
./5.15.10-200.fc35.x86_64/extra/nvidia/nvidia-drm.ko
./5.15.10-200.fc35.x86_64/extra/nvidia/nvidia-modeset.ko
./5.15.10-200.fc35.x86_64/extra/nvidia/nvidia-peermem.ko
./5.15.10-200.fc35.x86_64/extra/nvidia/nvidia-uvm.ko
./5.15.10-200.fc35.x86_64/extra/nvidia/nvidia.ko

Before I try removing and reinstalling, or trying the autoinstaller (not familiar with that method), any way I can get more information on why the modules fail to be found with the new kernel, but load fine with the older version?

Thanks again – Peter

I don’t know. But to make sure, maybe you could boot in to your old kernel that work, then try to remove your newest kernel. After that, run sudo dnf distro-sync.

Annoying how these things happen, but I just did a “yum update”, including a kernel update, and just as I was about to start debugging this issue again, it just worked. So obviously rebuilding the nVidia kernel modules against the updated kernel has fixed something, but I don’t know what.

An unsatisfactory conclusion, but happily running now with my two monitors in a decent resolution with the latest kernel.

Happy New Year to everyone. – Peter

There was a kernel update, but recently there was also an update to the nvidia 495 driver which went from 495.44 to 495.46.

It is possible the kernel update caused the driver rebuild, and also possible the driver update caused the rebuild, but the combination seems to have worked for you. :+1: