Fedora 40 with old nvidia 390xx rpmfusion drivers. Driver builds and loads, but no video

I have an old GPU and trying to use old nvidia drivers to bring it back to life.
It works fine with nouveau, but I’d like to get the nvidia drivers working
again. The hardware all worked several Fedora versions ago, but I’ve been
using noveau for several years since I didn’t need the nvidia support.

After installation of the nvidia drivers the boot fails, but the nvidia
modules are loading. I can tell that by editing the grub command line and
adding “rescue” to the end of the kernel. However, during normal boot the
screen goes blank after I see three graphic rectangles that are gray then
white, followed by the same rectangles turing orange. The screen then goes
blank and I get a message on the monitors that says ‘no signal’. That’s it.

While in rescue mode, In journalctl -xb
I see that the nvidia failback service is trying to revert to nouveau.
The fallback doesn’t actually work, possibly because the nvidia modules
are actually loaded. See lsmod and journalctl below.

Current system is

Fedora 40
NVIDIA GF110 [GeForce GTX 590] (Fermi)
rpmfusion nvidia drivers 390xx (unsupported/best effort)

$ uname -a
Linux rexter 6.10.10-200.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Sep 12 18:26:09 UTC 2024 x86_64 GNU/Linux

$ rpm -qa '*nvidia*'
nvidia-gpu-firmware-20240909-1.fc40.noarch
xorg-x11-drv-nvidia-390xx-kmodsrc-390.157-4.fc40.x86_64
nvidia-settings-390xx-390.157-3.fc40.x86_64
xorg-x11-drv-nvidia-390xx-libs-390.157-4.fc40.x86_64
xorg-x11-drv-nvidia-390xx-390.157-4.fc40.x86_64
akmod-nvidia-390xx-390.157-11.fc40.x86_64
kmod-nvidia-390xx-6.10.10-200.fc40.x86_64-390.157-11.fc40.x86_64
kmod-nvidia-390xx-390.157-11.fc40.x86_64

$ dnf list '*nvidia*'
Last metadata expiration check: 4:18:41 ago on Sat 21 Sep 2024 04:45:07 PM CDT.

Installed Packages
akmod-nvidia-390xx.x86_64                                                                       3:390.157-11.fc40                                                   @rpmfusion-nonfree-updates
kmod-nvidia-390xx.x86_64                                                                        3:390.157-11.fc40                                                   @rpmfusion-nonfree-updates
kmod-nvidia-390xx-6.10.10-200.fc40.x86_64.x86_64                                                3:390.157-11.fc40                                                   @@commandline             
nvidia-gpu-firmware.noarch                                                                      20240909-1.fc40                                                     @updates                  
nvidia-settings-390xx.x86_64                                                                    390.157-3.fc40                                                      @rpmfusion-nonfree-updates
xorg-x11-drv-nvidia-390xx.x86_64                                                                3:390.157-4.fc40                                                    @rpmfusion-nonfree-updates
xorg-x11-drv-nvidia-390xx-kmodsrc.x86_64                                                        3:390.157-4.fc40                                                    @rpmfusion-nonfree-updates
xorg-x11-drv-nvidia-390xx-libs.x86_64                                                           3:390.157-4.fc40                                                    @rpmfusion-nonfree-updates

Available Packages
akmod-nvidia.x86_64                                                                             3:560.35.03-1.fc40                                                  rpmfusion-nonfree-updates 
akmod-nvidia-340xx.x86_64                                                                       1:340.108-32.fc40                                                   rpmfusion-nonfree-updates 
akmod-nvidia-470xx.x86_64                                                                       3:470.256.02-3.fc40                                                 rpmfusion-nonfree-updates 
golang-github-nvidia-nvml-devel.noarch                                                          0.12.4.0-1.fc40                                                     updates                   
kmod-nvidia.x86_64                                                                              3:560.35.03-1.fc40                                                  rpmfusion-nonfree-updates 
kmod-nvidia-340xx.x86_64                                                                        1:340.108-32.fc40                                                   rpmfusion-nonfree-updates 
kmod-nvidia-470xx.x86_64                                                                        3:470.256.02-3.fc40                                                 rpmfusion-nonfree-updates 
libva-nvidia-driver.i686                                                                        0.0.12-2.fc40                                                       updates                   
libva-nvidia-driver.x86_64                                                                      0.0.12-2.fc40                                                       updates                   
nvidia-modprobe.x86_64                                                                          3:560.35.03-1.fc40                                                  rpmfusion-nonfree-updates 
nvidia-persistenced.x86_64                                                                      3:560.35.03-1.fc40                                                  rpmfusion-nonfree-updates 
nvidia-query-resource-opengl.x86_64                                                             1.0.0-17.fc40                                                       fedora                    
nvidia-query-resource-opengl-lib.i686                                                           1.0.0-17.fc40                                                       fedora                    
nvidia-query-resource-opengl-lib.x86_64                                                         1.0.0-17.fc40                                                       fedora                    
nvidia-settings.x86_64                                                                          3:560.35.03-1.fc40                                                  rpmfusion-nonfree-updates 
nvidia-settings-470xx.x86_64                                                                    3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
nvidia-texture-tools.i686                                                                       2.1.2-9.fc40                                                        fedora                    
nvidia-texture-tools.x86_64                                                                     2.1.2-9.fc40                                                        fedora                    
nvidia-texture-tools-devel.i686                                                                 2.1.2-9.fc40                                                        fedora                    
nvidia-texture-tools-devel.x86_64                                                               2.1.2-9.fc40                                                        fedora                    
nvidia-xconfig.x86_64                                                                           3:560.35.03-1.fc40                                                  rpmfusion-nonfree-updates 
pcp-pmda-nvidia-gpu.x86_64                                                                      6.3.0-2.fc40                                                        updates                   
xorg-x11-drv-nvidia.x86_64                                                                      3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-340xx.x86_64                                                                1:340.108-15.fc40                                                   rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-340xx-cuda.x86_64                                                           1:340.108-15.fc40                                                   rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-340xx-devel.i686                                                            1:340.108-15.fc40                                                   rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-340xx-devel.x86_64                                                          1:340.108-15.fc40                                                   rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-340xx-kmodsrc.x86_64                                                        1:340.108-15.fc40                                                   rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-340xx-libs.i686                                                             1:340.108-15.fc40                                                   rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-340xx-libs.x86_64                                                           1:340.108-15.fc40                                                   rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-390xx-cuda.x86_64                                                           3:390.157-4.fc40                                                    rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-390xx-cuda-libs.i686                                                        3:390.157-4.fc40                                                    rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-390xx-cuda-libs.x86_64                                                      3:390.157-4.fc40                                                    rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-390xx-devel.i686                                                            3:390.157-4.fc40                                                    rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-390xx-devel.x86_64                                                          3:390.157-4.fc40                                                    rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-390xx-libs.i686                                                             3:390.157-4.fc40                                                    rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx.x86_64                                                                3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-cuda.x86_64                                                           3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-cuda-libs.i686                                                        3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-cuda-libs.x86_64                                                      3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-devel.i686                                                            3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-devel.x86_64                                                          3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-kmodsrc.x86_64                                                        3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-libs.i686                                                             3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-libs.x86_64                                                           3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-470xx-power.x86_64                                                          3:470.256.02-1.fc40                                                 rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-cuda.x86_64                                                                 3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-cuda-libs.i686                                                              3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-cuda-libs.x86_64                                                            3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-devel.i686                                                                  3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-devel.x86_64                                                                3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-kmodsrc.x86_64                                                              3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-libs.i686                                                                   3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-libs.x86_64                                                                 3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 
xorg-x11-drv-nvidia-power.x86_64                                                                3:560.35.03-3.fc40                                                  rpmfusion-nonfree-updates 

Non-graphic rescue mode


# lsmod | egrep -i "nouv|nvid"
 
nvidia_drm             65536  0
nvidia_modeset       1339392  1 nvidia_drm
nvidia              19804160  1 nvidia_modeset
ipmi_msghandler        98304  2 ipmi_devintf,nvidia
video                  81920  1 nvidia

# journalctl -xb | egrep -i "nouv|nvid"

Sep 21 21:39:09 rexter kernel: Command line: BOOT_IMAGE=(hd0,gpt2)/vmlinuz-6.10.10-200.fc40.x86_64 root=UUID=26c4041f-1d78-44ea-aeac-68a6b5d18c4a ro rd.luks.uuid=luks-670268e7-653d-4689-ac8d-5d048c367aea rd.md.uuid=58e7699e:71179437:9e607a40:624df746 rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rescue
Sep 21 21:39:09 rexter kernel: Kernel command line: BOOT_IMAGE=(hd0,gpt2)/vmlinuz-6.10.10-200.fc40.x86_64 root=UUID=26c4041f-1d78-44ea-aeac-68a6b5d18c4a ro rd.luks.uuid=luks-670268e7-653d-4689-ac8d-5d048c367aea rd.md.uuid=58e7699e:71179437:9e607a40:624df746 rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rescue
Sep 21 21:39:09 rexter dracut-cmdline[396]: Using kernel command line parameters:  rd.driver.pre=btrfs   BOOT_IMAGE=(hd0,gpt2)/vmlinuz-6.10.10-200.fc40.x86_64 root=UUID=26c4041f-1d78-44ea-aeac-68a6b5d18c4a ro rd.luks.uuid=luks-670268e7-653d-4689-ac8d-5d048c367aea rd.md.uuid=58e7699e:71179437:9e607a40:624df746 rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 rescue
Sep 21 21:39:32 rexter kernel: nvidia: loading out-of-tree module taints kernel.
Sep 21 21:39:32 rexter kernel: nvidia: module license 'NVIDIA' taints kernel.
Sep 21 21:39:32 rexter kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
Sep 21 21:39:32 rexter kernel: nvidia: module license taints kernel.
Sep 21 21:39:32 rexter kernel: nvidia-nvlink: Nvlink Core is being initialized, major device number 235
Sep 21 21:39:32 rexter kernel: nvidia 0000:04:00.0: vgaarb: VGA decodes changed: olddecodes=io+mem,decodes=none:owns=io+mem
Sep 21 21:39:32 rexter kernel: NVRM: loading NVIDIA UNIX x86_64 Kernel Module  390.157  Wed Oct 12 09:19:07 UTC 2022 (using threaded interrupts)
Sep 21 21:39:32 rexter (udev-worker)[1383]: nvidia: Process '/usr/bin/bash -c '/usr/bin/mknod -Z -m 666 /dev/nvidiactl c 195 255'' failed with exit code 1.
Sep 21 21:39:32 rexter (udev-worker)[1410]: nvidia: Process '/usr/bin/bash -c 'for i in $(cat /proc/driver/nvidia/gpus/*/information | grep Minor | cut -d \  -f 4); do /usr/bin/mknod -Z -m 666 /dev/nvidia${i} c 195 ${i}; done'' failed with exit code 1.
Sep 21 21:39:32 rexter kernel: nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  390.157  Wed Oct 12 09:15:25 UTC 2022
Sep 21 21:39:32 rexter kernel: [drm] [nvidia-drm] [GPU ID 0x00000400] Loading driver
Sep 21 21:39:33 rexter kernel: input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:02.0/0000:02:00.0/0000:03:02.0/0000:05:00.1/sound/card3/input15
Sep 21 21:39:33 rexter kernel: input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:02.0/0000:02:00.0/0000:03:02.0/0000:05:00.1/sound/card3/input17
Sep 21 21:39:33 rexter kernel: input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:02.0/0000:02:00.0/0000:03:02.0/0000:05:00.1/sound/card3/input19
Sep 21 21:39:33 rexter kernel: input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:02.0/0000:02:00.0/0000:03:02.0/0000:05:00.1/sound/card3/input21
Sep 21 21:39:33 rexter kernel: input: HDA NVidia HDMI/DP,pcm=3 as /devices/pci0000:00/0000:00:02.0/0000:02:00.0/0000:03:00.0/0000:04:00.1/sound/card2/input16
Sep 21 21:39:33 rexter kernel: input: HDA NVidia HDMI/DP,pcm=7 as /devices/pci0000:00/0000:00:02.0/0000:02:00.0/0000:03:00.0/0000:04:00.1/sound/card2/input18
Sep 21 21:39:33 rexter kernel: input: HDA NVidia HDMI/DP,pcm=8 as /devices/pci0000:00/0000:00:02.0/0000:02:00.0/0000:03:00.0/0000:04:00.1/sound/card2/input20
Sep 21 21:39:33 rexter kernel: input: HDA NVidia HDMI/DP,pcm=9 as /devices/pci0000:00/0000:00:02.0/0000:02:00.0/0000:03:00.0/0000:04:00.1/sound/card2/input22
Sep 21 21:39:33 rexter kernel: caller _nv001015rm+0x1bf/0x1f0 [nvidia] mapping multiple BARs
Sep 21 21:39:33 rexter kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:04:00.0 on minor 0
Sep 21 21:39:33 rexter kernel: [drm] [nvidia-drm] [GPU ID 0x00000500] Loading driver
Sep 21 21:39:34 rexter kernel: [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:05:00.0 on minor 1
Sep 21 21:39:34 rexter systemd[1]: nvidia-fallback.service - Fallback to nouveau as nvidia did not load was skipped because of an unmet condition check (ConditionPathExists=!/sys/module/nvidia).
░░ Subject: A start job for unit nvidia-fallback.service has finished successfully
░░ A start job for unit nvidia-fallback.service has finished successfully.

I’m probably expecting too much for this to work, but since the modules do load I think there is a solution. One other point to mention is that there is no
nvidia-xconfig installed. I see in the dnf output above is an nvidia-xconfig
pkg, but I didn’t try to install it since it is versioned to the most recent
nvidia modules.

The mknod errors in journalctl are because the character device files already
exist.

Thanks for any tips on what I can check next.

What Desktop Environment you using?

gnome

‘nvidia_drm.modeset=1’
add this parameter to boot commandline of kernel


edit with ‘e’ add nvidia_drm.modeset=1 after quiet and ‘ctrl + x’ to boot with this parameter

Thanks for the suggestion and looking at the problem, but that parameter is already part of the kernel command line

sudo nano /etc/gdm/custom.conf
uncomment the line #WaylandEnable=false

# GDM configuration storage
[daemon]
# Uncomment the line below to force the login screen to use Xorg
#WaylandEnable=false

[security]

[xdmcp]

[chooser]

[debug]
# Uncomment the line below to turn on debugging
#Enable=true

I fixed the formatting to use pre-formatted text for you.

That line is already uncommented.
WaylandEnable=false

Thanks for the tips. Still searching.

Remove this one kmod-nvidia-390xx that conflicts with the other one which was specially built to match the kernel.

To ensure that everything is full clean and functions use

  1. sudo dnf remove kmod-nvidia-390xx\* which will remove both
  2. sudo akmods --forcewhich will rebuild and install the proper one for the kernel you have installed.
  3. reboot

note that the instructions for installing that driver do not say to install the kmod-nvidia-390xx package. This is quoted from the rpmfusion instructions for installing the 390xx driver to support the GTX 590 GPU.

Legacy GeForce 400/500
Supported on current stable Xorg server release. EOL by NVIDIA at the end of 2022. Still available on "best effort basis" (newer kernel may break, will be discontinued at anytime if not actively maintained)

This driver is suitable for any NVIDIA Fermi GPU found between 2010 and 2012

dnf update -y
sudo dnf install xorg-x11-drv-nvidia-390xx akmod-nvidia-390xx
sudo dnf install xorg-x11-drv-nvidia-390xx-cuda #optional for cuda up to 9.2 support

I removed the 2 pkgs as suggested and rebuilt the akmod successfully, however there was no change. I had previously installed the kmod-nvidia-390xx.x86_64 while debugging. I noticed it in the repo and thought maybe I needed it. Anyway, still no change in behavior. However…

If I change from ‘nvidia_drm.modeset=1’ to 0 in the grub boot, I get what appears to be some progress.

Now I can boot and a graphical login screen appears for awhile but does not allow me to actually login. After several seconds or couple of minutes, the monitors both report “no signal” and then I can’t do anything. If, on the other hand, I switch to a tty before the monitors get the “no signal” then I can poke around and debug as root on the tty.

I’m not sure what the nvidia_drm.modeset=0 vs. 1 actually does, but perhaps it will provide some insight to you. I can see Xorg running and nvidia modules loaded while logged in to the tty. But, I can’t login to the graphical environment.

I’ll try turn on debugging in /etc/gdm/custom.conf.

What do you have with cat /proc/cmdline and cat /etc/kernel/cmdline?

BTW, according to the image above you seem to be running Fedora 20 which has been EOL for about 9 years.
Please also post uname -a so we can see the actual fedora version and kernel in use. If actually using fedora 20 then it is almost impossible for us to support that old a version of fedora.

At the moment, I have booted back into nouveau graphical mode by editing the boot command in grub. I remove the nouveau blacklists and the nvidia-drm.modeset=1

$ cat /proc/cmdline
BOOT_IMAGE=(hd0,gpt2)/vmlinuz-6.10.10-200.fc40.x86_64 root=UUID=26c4041f-1d78-44ea-aeac-68a6b5d18c4a ro rd.luks.uuid=luks-670268e7-653d-4689-ac8d-5d048c367aea rd.md.uuid=58e7699e:71179437:9e607a40:624df746 rhgb quiet
 
$ cat /etc/kernel/cmdline
root=UUID=26c4041f-1d78-44ea-aeac-68a6b5d18c4a ro rd.luks.uuid=luks-670268e7-653d-4689-ac8d-5d048c367aea rd.md.uuid=58e7699e:71179437:9e607a40:624df746 rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1

$ uname -a
Linux rexter 6.10.10-200.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Sep 12 18:26:09 UTC 2024 x86_64 GNU/Linux

As for the old Fedora grub screenshot, that was from Igor, not me. I am running Fedora 40.

I would have realized that about the image if I had looked at the name of the poster, or had rescanned your first post.

What is your intent at this point.
Nouveau works for that gpu (probably very well) and the only real drawback is that nvidia requires the use of X11 (does not support wayland) and nouveau cannot use the hardware acceleration of the GPU. Otherwise, even with wayland, nouveau seems to support that card.

Maybe consider removing the nvidia drivers entirely and stick with nouveau?
sudo dnf remove '*nvidia*' --exclude nvidia-gpu-firmware
Then look at the file /etc/kernel/cmdline and if it still has the nouveau blacklist and nvidia modprobe entries that could also be removed using grubby.

I really want to give my ancient version of Quake 4 another run. For that I need the acceleration support, I believe. But, you are correct that nouveau works quite nicely for everyday tasks.

My slightly newer card is quite satisfactory for simple programming in jupyterlab, email and web browsing and watching videos using nouveau. The nvidia 470xx driver requires Xorg but has issues with Gnome. You may find the reliability of nouveau is more important than whatever advantages you get using the Nvidia driver.