Few days ago I did the weekly system update which included latest NVIDIA drivers. Everything went smoothly, no error messages, systems works as usual. Today I wanted to play some game and I noticed that the performance was horrible. This is what I found
lspci -k | grep -A 2 -E "(VGA|3D)"
00:02.0 VGA compatible controller: Intel Corporation Alder Lake-P GT2 [Iris Xe Graphics] (rev 0c)
Subsystem: Dell Device 0aff
Kernel driver in use: i915
--
01:00.0 VGA compatible controller: NVIDIA Corporation GA106M [GeForce RTX 3060 Mobile / Max-Q] (rev a1)
Subsystem: Dell Device 0aff
Kernel driver in use: nvidia
xrandr --listproviders
Providers: number : 0
I’ve tried to reinstall drivers, and ran some fixes I found online but still no luck. Any ideas how to fix it?
update
Just remembered. After last drivers update I wasn’t able to run any Steam game. I always got some directx error. Before I had no issues.
update 2
I’m on Fedora 40, currently I’m using drivers downloaded directly from NVIDIA website. Before that I was using whatever drivers from these repositories
dnf repolist
repo id repo name
fedora Fedora 40 - x86_64
fedora-cisco-openh264 Fedora 40 openh264 (From Cisco) - x86_64
nvidia-container-toolkit nvidia-container-toolkit
protonvpn-fedora-stable ProtonVPN Fedora Stable repository
rpmfusion-free RPM Fusion for Fedora 40 - Free
rpmfusion-free-updates RPM Fusion for Fedora 40 - Free - Updates
rpmfusion-nonfree RPM Fusion for Fedora 40 - Nonfree
rpmfusion-nonfree-updates RPM Fusion for Fedora 40 - Nonfree - Updates
updates
The only thing I remember related to messing with drivers was playing with podman containers accessing my gpu (nvidia-container-toolkit).
Currently I’m using driver version 550.107.02
deleted by creator
Sorry about that, I forgot to add more details. I have updated my post.
I am also experiencing this issue on Fedora 40 with the Negativo drivers, and I believe this is a flatpak issue. Here is a GitHub issue detailing the problem. Allegedly it has been fixed, but I have updated to the latest commit and am still having the same issue, so I am unsure what to do (I’ve spent a number of hours trying to troubleshoot this). You might have luck just running a
flatpak update
, as that is supposed to solve this issue (YMMV though, it didn’t fix it for me).What is the output of “modinfo nvidia”?
From your output it looks like the driver is loaded, it might just be the game/OS selecting the wrong GPU by default.
modinfo nvidia
filename: /lib/modules/6.10.6-200.fc40.x86_64/extra/nvidia/nvidia.ko.xz alias: char-major-195-* version: 560.35.03 supported: external license: NVIDIA firmware: nvidia/560.35.03/gsp_tu10x.bin firmware: nvidia/560.35.03/gsp_ga10x.bin srcversion: 73D9C383254E4CB4BF2CDFA alias: pci:v000010DEd*sv*sd*bc06sc80i00* alias: pci:v000010DEd*sv*sd*bc03sc02i00* alias: pci:v000010DEd*sv*sd*bc03sc00i00* depends: retpoline: Y name: nvidia vermagic: 6.10.6-200.fc40.x86_64 SMP preempt mod_unload sig_id: PKCS#7 signer: myhostname-2523446329 sig_key: 2C:94:54:AD:F6:AE:17:12:62:63:78:D6:E3:D5:12:DE:A9:20:CD:08 sig_hashalgo: sha256 signature: 55:A6:10:E5:CF:30:99:6D:24:8F:B9:B1:6A:BF:32:AA:BB:90:8E:CD: 39:AF:A3:94:F4:64:BF:DD:A8:87:A2:6B:E1:1B:77:7F:6E:59:A7:28: 7F:02:50:A5:54:CC:99:2F:2D:48:17:AC:66:9D:10:7B:CA:7C:FC:44: F2:5B:37:7B:31:EC:30:E2:5C:F0:C5:A0:C6:EE:63:7E:2C:42:EE:48: 75:FD:08:30:86:96:E4:74:29:00:1A:BA:9A:CA:96:06:6D:40:0E:C8: 69:52:08:25:BD:95:30:2A:E6:C5:55:8C:12:86:6E:87:E9:BD:FA:62: 7C:D6:76:C9:16:0F:4A:26:56:53:21:AB:36:6C:B3:7E:0E:36:3C:EF: 43:80:CC:BD:49:8F:63:9F:C6:F7:3E:D2:86:81:C3:1E:7C:DA:05:75: CE:31:19:BB:52:42:B5:D9:68:B0:31:1D:A9:4A:71:73:22:BC:FB:D6: 3E:91:0A:D4:80:81:ED:3D:95:C7:90:70:09:4E:24:9B:6F:A6:A8:BC: 5F:4A:90:00:5B:91:AD:12:5E:A3:35:F3:8B:29:12:2C:15:45:61:D2: 55:BE:7F:46:C6:60:4B:91:F8:1E:6F:70:D8:05:74:57:C3:82:26:79: 19:8D:BC:3D:C7:2B:2A:D0:14:A1:4B:00:5A:61:AA:2D:9F:B8:16:CA: CD:BC:BB:8B:18:79:27:BE:26:34:64:A5:29:8B:5A:F1:54:19:46:B9: 23:16:D2:DB:07:0C:C3:81:17:86:20:D8:05:CD:49:43:0B:F3:36:01: EE:4F:F9:25:29:C0:6A:3B:70:8C:95:95:37:D5:70:72:C2:E8:4D:FF: 5B:F3:7D:DA:E1:F7:89:F6:B3:1B:DD:C4:5A:08:80:31:25:23:B6:84: D2:E0:46:AE:F7:21:FC:9A:DA:FD:F9:44:58:E8:36:F1:10:34:35:8C: 3E:09:25:6B:D9:BC:8B:E5:D9:31:02:56:76:CC:9D:41:B5:E0:15:3E: DB:90:BF:92:EB:92:72:76:39:7F:BF:FD:6A:71:BD:C0:B1:EB:A5:98: 75:6A:CB:8A:70:48:AE:75:C4:DB:0C:A5:5B:F5:C6:16:C0:96:D6:B2: 66:A7:01:54:BB:A4:33:EE:31:65:A9:4F:4E:11:05:5F:DE:69:B3:25: 02:3D:E4:91:39:CB:7C:E9:24:E8:09:BA:80:9C:AB:2F:8D:45:84:62: 38:3F:97:7E:3A:7F:66:4F:9D:59:54:D1:51:55:53:C3:FD:CE:97:79: 97:84:FD:3A:C2:FD:E3:A7:CE:03:30:D6:98:0E:CE:C6:5A:2D:F5:7C: 29:38:4A:E7:9C:05:02:94:FE:CC:0E:A4 parm: NvSwitchRegDwords:NvSwitch regkey (charp) parm: NvSwitchBlacklist:NvSwitchBlacklist=uuid[,uuid...] (charp) parm: NVreg_ResmanDebugLevel:int parm: NVreg_RmLogonRC:int parm: NVreg_ModifyDeviceFiles:int parm: NVreg_DeviceFileUID:int parm: NVreg_DeviceFileGID:int parm: NVreg_DeviceFileMode:int parm: NVreg_InitializeSystemMemoryAllocations:int parm: NVreg_UsePageAttributeTable:int parm: NVreg_EnablePCIeGen3:int parm: NVreg_EnableMSI:int parm: NVreg_TCEBypassMode:int parm: NVreg_EnableStreamMemOPs:int parm: NVreg_RestrictProfilingToAdminUsers:int parm: NVreg_PreserveVideoMemoryAllocations:int parm: NVreg_EnableS0ixPowerManagement:int parm: NVreg_S0ixPowerManagementVideoMemoryThreshold:int parm: NVreg_DynamicPowerManagement:int parm: NVreg_DynamicPowerManagementVideoMemoryThreshold:int parm: NVreg_EnableGpuFirmware:int parm: NVreg_EnableGpuFirmwareLogs:int parm: NVreg_OpenRmEnableUnsupportedGpus:int parm: NVreg_EnableUserNUMAManagement:int parm: NVreg_MemoryPoolSize:int parm: NVreg_KMallocHeapMaxSize:int parm: NVreg_VMallocHeapMaxSize:int parm: NVreg_IgnoreMMIOCheck:int parm: NVreg_NvLinkDisable:int parm: NVreg_EnablePCIERelaxedOrderingMode:int parm: NVreg_RegisterPCIDriver:int parm: NVreg_EnableResizableBar:int parm: NVreg_EnableDbgBreakpoint:int parm: NVreg_EnableNonblockingOpen:int parm: NVreg_RegistryDwords:charp parm: NVreg_RegistryDwordsPerDevice:charp parm: NVreg_RmMsg:charp parm: NVreg_GpuBlacklist:charp parm: NVreg_TemporaryFilePath:charp parm: NVreg_ExcludedGpus:charp parm: NVreg_DmaRemapPeerMmio:int parm: NVreg_RmNvlinkBandwidth:charp parm: NVreg_ImexChannelCount:int parm: NVreg_CreateImexChannel0:int parm: rm_firmware_active:charp
Yeah that means the driver is loaded fine, but it looks like it is selecting the iGPU by default. You have several options to fix this.
-
You can disable integrated graphics in the bios if there is an option for it. This is the easiest, but if you’re on a laptop, leaving it enabled might save some battery in which case goto 2.
-
You can tell either each program or the OS to prefer the Nvidia GPU. The way you do this also depends on how the gpu is set up (most laptops have it as secondary)
You can test this by running
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxgears
in one terminal, andnividia-smi
in a second terminal to verify a program (in this case glxgears) is running on the nvidia gpu.I’ll try to find a good guide, but depending on the setup, it could be a simple MUX switch you can flip to change between iGPU and Nvidia GPU, or with the use of some preference selector tool (I think it was called prime?).
It’s confusing because lots of laptops essentially use the Nvidia GPU as offload which makes it a bit tricky to coaxe it into using the correct one.
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia
This worked. I haven’t checked the bios yet. If there’s an option to disable integrated graphics I will use it. For now I will just use the vars.
Funny thing, yesterday there was an update for nvidia drivers. I was stupid enough to install it and now I have the same directx error as before. I’m done with gaming on Linux.
-
Could you show us the kernel command line parameters (in /etc/default/grub)? Is the modeset along with other params enabled? I’m not a fedora user, so I may not be of too much help.
bat /etc/default/grub ───────┬───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── │ File: /etc/default/grub ───────┼───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── 1 │ GRUB_TIMEOUT=5 2 │ GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)" 3 │ GRUB_DEFAULT=saved 4 │ GRUB_DISABLE_SUBMENU=true 5 │ GRUB_TERMINAL_OUTPUT="console" 6 │ GRUB_CMDLINE_LINUX="rhgb quiet rd.driver.blacklist=nouveau modprobe.blacklist=nouveau" 7 │ GRUB_DISABLE_RECOVERY="true" 8 │ GRUB_ENABLE_BLSCFG=true ───────┴─────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────
Do you not need the
nvidia-drm.modeset=1
inGRUB_CMDLINE_LINUX
?https://www.if-not-true-then-false.com/2015/fedora-nvidia-guide/#262-edit-etcdefaultgrub
You might be right. I have a feeling that when I blacklisted nouveau rest of the stuff got deleted from this line. I’ll give it a try.
Make sure to update your grub after you do. I’ve messed that one up before lol 😅
Yeah, I think I messed it up :) Now my system starts in cli mode. Well, I wanted to nuke everything anyway so no harm done.
edit
I was able to switch to gui but still no luck with the gpu.
Ah if you messed it up, you can press “e” on the grub entry and edit the command line parameters to remove the thing that messes it up. Good luck with your fresh install [and use Debian this time… jk :)]