F39 6.7 kernels don't connect with my ZOTAC GeForce GTX 1650

I have a desktop machine with a ZOTAC GeForce GTX 1650 card in it. When I upgrade to 6.7 kernels on f39, the system boots and the screen goes to sleep. I get no response trying to go to console mode. This does not happen on 6.6 kernels.

I’ve concluded that the new kernels are not connecting to my video card. Here’s partial inxi when things work:
System:
Kernel: 6.6.14-200.fc39.x86_64 arch: x86_64 bits: 64 compiler: gcc
v: 2.40-13.fc39
Desktop: N/A wm: gnome-shell dm: 1: GDM 2: SDDM note: stopped
Distro: Fedora Linux 39 (Workstation Edition)
Machine:
Type: Desktop Mobo: ASUSTeK model: PRIME X470-PRO v: Rev X.0x
serial: part-nu: SKU UEFI: American Megatrends v: 4024
date: 09/07/2018
CPU:
Info: 8-core model: AMD Ryzen 7 2700X bits: 64 type: MT MCP arch: Zen+
rev: 2 cache: L1: 768 KiB L2: 4 MiB L3: 16 MiB
Speed (MHz): avg: 2170 high: 2200 min/max: 2200/3800 boost: disabled
cores: 1: 2200 2: 2200 3: 2200 4: 2200 5: 2200 6: 2052 7: 2200 8: 2200
9: 1883 10: 2200 11: 2200 12: 2200 13: 2196 14: 2200 15: 2200 16: 2200
bogomips: 121366
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Graphics:
Device-1: NVIDIA TU117 [GeForce GTX 1650] vendor: ZOTAC driver: nouveau
v: kernel arch: Turing pcie: speed: 2.5 GT/s lanes: 16 ports:
active: HDMI-A-1 empty: DP-1,DVI-D-1 bus-ID: 08:00.0 chip-ID: 10de:1f82
temp: 30.0 C
Device-2: Logitech Webcam C270 driver: snd-usb-audio,uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 bus-ID: 5-1.4:3 chip-ID: 046d:0825
Display: server: X.Org v: 23.2.4 with: Xwayland v: 23.2.4
compositor: gnome-shell driver: X: loaded: modesetting unloaded: fbdev,vesa
dri: swrast gpu: nouveau display-ID: localhost:12.0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96
Monitor-1: HDMI-A-1 mapped: eDP-1 model: ViewSonic VX2703 SERIES
res: 1920x1080 dpi: 143 diag: 685mm (27")
API: EGL v: 1.5 platforms: device: 0 drv: nouveau device: 1 drv: swrast
gbm: drv: nouveau surfaceless: drv: nouveau x11: drv: swrast
inactive: wayland
API: OpenGL v: 4.5 compat-v: 4.3 vendor: mesa v: 23.3.6 glx-v: 1.4
direct-render: yes renderer: llvmpipe (LLVM 17.0.6 256 bits)
device-ID: ffffffff:ffffffff
API: Vulkan v: 1.3.268 surfaces: xcb,xlib device: 0 type: cpu
driver: mesa llvmpipe device-ID: 10005:0000

Here’s when it does not work:
System:
Kernel: 6.7.6-200.fc39.x86_64 arch: x86_64 bits: 64 compiler: gcc
v: 2.40-14.fc39
Desktop: N/A wm: gnome-shell dm: 1: GDM 2: SDDM note: stopped
Distro: Fedora Linux 39 (Workstation Edition)
Machine:
Type: Desktop Mobo: ASUSTeK model: PRIME X470-PRO v: Rev X.0x
serial: part-nu: SKU UEFI: American Megatrends v: 4024
date: 09/07/2018
CPU:
Info: 8-core model: AMD Ryzen 7 2700X bits: 64 type: MT MCP arch: Zen+
rev: 2 cache: L1: 768 KiB L2: 4 MiB L3: 16 MiB
Speed (MHz): avg: 2189 high: 2200 min/max: 2200/3800 boost: disabled
cores: 1: 2200 2: 2200 3: 2029 4: 2200 5: 2200 6: 2200 7: 2196 8: 2200
9: 2200 10: 2200 11: 2200 12: 2200 13: 2200 14: 2200 15: 2200 16: 2200
bogomips: 121372
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3
Graphics:
Device-1: NVIDIA TU117 [GeForce GTX 1650] vendor: ZOTAC driver: nouveau
v: kernel arch: Turing pcie: speed: 2.5 GT/s lanes: 16 ports: active: none
empty: DP-1,DVI-D-1,HDMI-A-1 bus-ID: 08:00.0 chip-ID: 10de:1f82
temp: 30.0 C
Device-2: Logitech Webcam C270 driver: snd-usb-audio,uvcvideo type: USB
rev: 2.0 speed: 480 Mb/s lanes: 1 bus-ID: 5-1.4:3 chip-ID: 046d:0825
Display: server: X.Org v: 23.2.4 with: Xwayland v: 23.2.4
compositor: gnome-shell driver: X: loaded: modesetting unloaded: fbdev,vesa
dri: swrast gpu: nouveau display-ID: localhost:10.0 screens: 1
Screen-1: 0 s-res: 1920x1080 s-dpi: 96
Monitor-1: eDP-1 res: 1920x1080 dpi: 143 diag: 389mm (15.33")
API: EGL v: 1.5 platforms: device: 0 drv: nouveau device: 1 drv: swrast
gbm: drv: nouveau surfaceless: drv: nouveau x11: drv: swrast
inactive: wayland
API: OpenGL v: 4.5 compat-v: 4.3 vendor: mesa v: 23.3.6 glx-v: 1.4
direct-render: yes renderer: llvmpipe (LLVM 17.0.6 256 bits)
device-ID: ffffffff:ffffffff
API: Vulkan v: 1.3.268 surfaces: xcb,xlib device: 0 type: cpu
driver: mesa llvmpipe device-ID: 10005:0000

Here’s dmesg output when the system successfully connects to the card:
[ 5.115603] nouveau 0000:08:00.0: vgaarb: deactivate vga console
[ 5.115663] nouveau 0000:08:00.0: NVIDIA TU117 (167000a1)
[ 5.242956] nouveau 0000:08:00.0: bios: version 90.17.4d.40.6c
[ 5.249852] nouveau 0000:08:00.0: pmu: firmware unavailable
[ 5.262853] nouveau 0000:08:00.0: fb: 4096 MiB GDDR6
[ 5.281738] nouveau 0000:08:00.0: DRM: VRAM: 4096 MiB
[ 5.281741] nouveau 0000:08:00.0: DRM: GART: 536870912 MiB
[ 5.281744] nouveau 0000:08:00.0: DRM: BIT table ‘A’ not found
[ 5.281746] nouveau 0000:08:00.0: DRM: BIT table ‘L’ not found
[ 5.281748] nouveau 0000:08:00.0: DRM: TMDS table version 2.0
[ 5.281750] nouveau 0000:08:00.0: DRM: DCB version 4.1
[ 5.281751] nouveau 0000:08:00.0: DRM: DCB outp 00: 01000f32 04620030
[ 5.281754] nouveau 0000:08:00.0: DRM: DCB outp 01: 02011f52 00020010
[ 5.281756] nouveau 0000:08:00.0: DRM: DCB outp 04: 04822f76 04600010
[ 5.281759] nouveau 0000:08:00.0: DRM: DCB outp 05: 04022f72 00020010
[ 5.281761] nouveau 0000:08:00.0: DRM: DCB conn 00: 00001031
[ 5.281763] nouveau 0000:08:00.0: DRM: DCB conn 01: 00010161
[ 5.281764] nouveau 0000:08:00.0: DRM: DCB conn 02: 01000246
[ 5.282484] nouveau 0000:08:00.0: DRM: MM: using COPY for buffer copies
[ 5.284503] [drm] Initialized nouveau 1.4.0 20120801 for 0000:08:00.0 on minor 0
[ 5.431449] fbcon: nouveaudrmfb (fb0) is primary device
[ 5.431453] fbcon: Deferring console take-over
[ 5.431456] nouveau 0000:08:00.0: [drm] fb0: nouveaudrmfb frame buffer device

And when it doesn’t:
[ 5.228610] nouveau 0000:08:00.0: vgaarb: deactivate vga console
[ 5.228666] nouveau 0000:08:00.0: NVIDIA TU117 (167000a1)
[ 5.355546] nouveau 0000:08:00.0: bios: version 90.17.4d.40.6c
[ 5.361625] nouveau 0000:08:00.0: pmu: firmware unavailable
[ 5.371512] nouveau 0000:08:00.0: fb: 4096 MiB GDDR6
[ 5.390054] nouveau 0000:08:00.0: DRM: VRAM: 4096 MiB
[ 5.390058] nouveau 0000:08:00.0: DRM: GART: 536870912 MiB
[ 5.390061] nouveau 0000:08:00.0: DRM: BIT table ‘A’ not found
[ 5.390064] nouveau 0000:08:00.0: DRM: BIT table ‘L’ not found
[ 5.390066] nouveau 0000:08:00.0: DRM: TMDS table version 2.0
[ 5.390793] nouveau 0000:08:00.0: DRM: MM: using COPY for buffer copies
[ 5.392775] [drm] Initialized nouveau 1.4.0 20120801 for 0000:08:00.0 on minor 0
[ 5.392867] nouveau 0000:08:00.0: [drm] Cannot find any crtc or sizes
[ 5.416367] nouveau 0000:08:00.0: [drm] Cannot find any crtc or sizes
[ 5.416397] nouveau 0000:08:00.0: [drm] Cannot find any crtc or sizes
[ 5.416432] nouveau 0000:08:00.0: [drm] Cannot find any crtc or sizes
[ 5.416460] nouveau 0000:08:00.0: [drm] Cannot find any crtc or sizes

I have the latest nvidia firmware installed:
nvidia-gpu-firmware-20240220-1.fc39.noarch

Any thoughts?

Possibly this. The nouveau drivers do not fully support all GPUs and newer kernels.

Have you tried using the nvidia drivers installed from rpmfusion?
If dnf repolist shows the rpmfusion-nonfree-nvidia-driver repo then simply running sudo dnf install akmod-nvidia should install the driver. Wait at least 5 minutes after the install completes then reboot. It is important that secure boot be disabled or the driver will not load unless signed by the user

That is a good thought. I’ll try it. Or just get a new video card! I used to use the proprietary nvidia driver but changed to nouveau sometime back.

I have a system that happily uses the GTX 1650 gpu with the nvidia drivers. I only install the nvidia drivers (and almost 100% of everything else that is not fedora native) from rpmfusion since I have always seen those packages as reliable and stable on fedora.

Note that if a user reboots too quickly after installing or upgrading a kernel or drivers it may result in corrupted drivers that do not work. People often see that with nvidia, virtualbox, and others since the driver module is normally locally compiled and installed.

There is just one thing, though. The nvidia gpu firmware and the nouveau driver do work for this card. In fact, they are working right now. The thing that is different is changing the kernel from 6.6 to 6.7. That is when things stop. Any ideas why that might be?

I could install the proprietary driver. That would mean turning off secure boot. I took a look at my BIOS and I see it is enabled but there isn’t an obvious way to turn it off. It has an option for Windows or other OS and one other setting. I’ll take a look at the motherboard documentation.

Not clear that going proprietary will cause the kernel to behave differently, though.

There is the alternative of self-signing the kernel modules which then allows the nvidia drivers to load with secure boot enabled.

If the akmods package is installed then instructions for that are in the file /usr/share/doc/akmods/README.secureboot

Once those steps are complete (every command there does require using sudo) and you have rebooted, then installing the nvidia drivers from rpmfusion will automatically sign the modules and they can be loaded with secure boot active.

I am not 100% certain that the nvidia driver will fix the problem but to me it seems worth trying.

Thanks for that. I’ll look into it soon. It is still an interesting question about whether there is an issue in the kernel or not. It doesn’t look like anyone else is having this particular issue.

Well, I just took a prowl into the basement and found the box the Zotac 1650 came in. It is copyright 2020 so it is only 4 years old.

I’ve also dug out the motherboard manual so I’ll see what it says about secure boot. I may do the self signing, though. It’d be nice to keep secure boot.

Any ideas how to determine or rule out a bug in the 6.7 kernels?

Thanks!

First try the nvidia drivers (with secure boot active). Those instructions in the file I gave seem very clear to me.

If you still have problems then come back to a possible kernel issue.
It is known and there are several threads about problems with booting on the newer kernels with the nouveau drivers. It seems one must force the kernel to boot with basic graphics mode with several nvidia GPUs and the newer kernels when using the nouveau drivers. I have not seen your GPU mentioned before and I don’t have that problem on my laptop with the same GPU, but I also have the nvidia drivers installed

Seems reasonable. The system is being used at this point so it may take a week or so before I have an opportunity to try things out.

Thank you.

I can suggest you use my tool for Nvidia drivers (zenvidia), not to advertise, but because it compiles the driver. This will allow you to have a compilation log and maybe understand what’s wrong with kernel 6.7?
Please note that my tool doesn’t manage rpmfusion drivers but Nvidia drivers directly, which implies remove the associated rpm packages. I’d understand if you didn’t want this :slight_smile:

Thanks for that, Mike. The desktop having an issue is one my wife uses a lot, so I have a limited time to mess with it. At this point, it is usable with the 6.6. kernels so things are okay. I should have more time to look at this later next week.

I was able to turn off secure boot in my BIOS. In newer versions of the BIOS, there is just an on/off checkbox. In mine, there are a set of keys and to turn it off, you have to delete the PK key (platform key). Yep, pretty intuitive. I can see why they changed it.

But, to add the proprietary NVIDIA drivers, I’d have to also go to the new kernel at the same time. That would mean changing both the driver and the kernel at the same time. Not ideal. Instead, I’ve ordered an AMD GPU that I can install, make sure it works on the 6.6 kernel, then try updating the kernel again. This approach gives me more ways to back up if necessary.