Hey everyone!
The issue I’m having is confusing me a lot so I’ll try to provide as many details as I can, because I’ve been stumped for almost two weeks already. Looked through a myriad of askfedora/SO/reddit threads and still can’t figure this out.
I’ve installed F33 KDE spin recently on my Dell XPS 15 9570 and was hoping to be able to utilize Nvidia Geforce GTX 1050ti Max-Q card using the Prime Render Offload method (using __NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia %command%
), so that I’m not draining the battery while just doing whatever but still able to play Steam games.
In order to install the proprietary drivers I have thoroughly followed the following guides:
- How to Set Nvidia as Primary GPU on Optimus-based Laptops (up to step 7 so that I’m not always using Nvidia GPU)
- The good ol` RPM fusion howto
Now the problem that I am having is that offloading simply does not work for me, which is indicated by a multitude of issues:
-
__NV_PRIME_RENDER_OFFLOAD=1 __GLX_VENDOR_LIBRARY_NAME=nvidia glxinfo | grep vendor
spits out this:X Error of failed request: BadValue (integer parameter out of range for operation) Major opcode of failed request: 152 (GLX) Minor opcode of failed request: 24 (X_GLXCreateNewContext) Value in failed request: 0x0 Serial number of failed request: 39 Current serial number in output stream: 40
-
xrandr --listproviders
lists only 1 device which is Intel -
Nvidia X Server Settings does not open and running
nvidia-settings -V
produces this:WARNING: NV-CONTROL extension not found on this Display. ERROR: Unable to load info from any available system
Some discussion threads on Reddit have indicated that this could be due to the fact that nouveau is still loaded, but…
cat /etc/modprobe.d/blacklist.conf
blacklist nouveau
Also blacklisted in GRUB params:
GRUB_CMDLINE_LINUX="rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 mem_sleep_default=deep rhgb quiet" GRUB_CMDLINE_LINUX_DEFAULT="rd.driver.blacklist=nouveau modprobe.blacklist=nouveau nvidia-drm.modeset=1 mem_sleep_default=deep rhgb quiet"
-
No mentions of “nvidia” or “glamoregl” in Xorg logs:
cat /var/log/Xorg.0.log | grep glamoregl
gives nothing
cat /var/log/Xorg.0.log | grep nvidia
only shows kernel command line being logged which includes the GRUB params
Along the issues, my other findings and helpful info:
uname -r
5.10.16-200.fc33.x86_64
lspci
and neofetch
recognize that I have the Nvidia GPU:
lspci -v | grep -A 10 NVIDIA
says
01:00.0 3D controller: NVIDIA Corporation GP107M [GeForce GTX 1050 Ti Mobile] (rev a1)
Flags: bus master, fast devsel, latency 0, IRQ 141
Memory at ec000000 (32-bit, non-prefetchable) [size=16M]
Memory at c0000000 (64-bit, prefetchable) [size=256M]
Memory at d0000000 (64-bit, prefetchable) [size=32M]
I/O ports at 3000 [size=128]
Expansion ROM at ed000000 [virtual] [disabled] [size=512K]
Capabilities: <access denied>
Kernel driver in use: nvidia
Kernel modules: nouveau, nvidia_drm, nvidia
rpm -qa \*nvidia\* | sort
outputs this
akmod-nvidia-460.39-1.fc33.x86_64
kmod-nvidia-5.10.16-200.fc33.x86_64-460.39-1.fc33.x86_64
nvidia-settings-460.39-1.fc33.x86_64
xorg-x11-drv-nvidia-460.39-1.fc33.x86_64
xorg-x11-drv-nvidia-kmodsrc-460.39-1.fc33.x86_64
xorg-x11-drv-nvidia-libs-460.39-1.fc33.i686
xorg-x11-drv-nvidia-libs-460.39-1.fc33.x86_64
Feels like there is supposed to be more. I did dnf install vdpauinfo libva-vdpau-driver libva-utils
, but feels like something is still missing, maybe nvidia-modprobe
? Not sure what it does but it doesn’t make a difference whether it is installed or not.
When running lsmod | grep nvidia
it appears that nvidia_drm
has a value of 0
.
nvidia_drm 65536 0
nvidia_modeset 1232896 1 nvidia_drm
nvidia 34136064 1 nvidia_modeset
drm_kms_helper 274432 2 nvidia_drm,i915
drm 618496 10 drm_kms_helper,nvidia_drm,i915
Also found this in dmesg | grep nvidia
:
[ 5.848820] nvidia: loading out-of-tree module taints kernel.
[ 5.848834] nvidia: module license 'NVIDIA' taints kernel.
[ 5.895034] nvidia: module verification failed: signature and/or required key missing - tainting kernel
[ 5.922884] nvidia-nvlink: Nvlink Core is being initialized, major device number 236
[ 5.937804] nvidia 0000:01:00.0: enabling device (0006 -> 0007)
[ 6.240033] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 460.39 Thu Jan 21 21:49:04 UTC 2021
[ 6.278566] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[ 7.154694] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 1
Other findings from nvidia-bug-report.log
:
[ 0.000000] secureboot: Secure boot disabled
[ 5.895034] nvidia: module verification failed: signature and/or required key missing - tainting kernel
NVRM: loading NVIDIA UNIX x86_64 Kernel Module 460.39 Thu Jan 21 21:54:06 UTC 2021
but not much else from NVRM
I tried configuring Xorg to see the GPU in /etc/X11/xorg.conf
which caused my laptop to, erm, not boot:
Section "ServerLayout"
Identifier "layout"
Screen 0 "intel"
Inactive "nvidia"
Option "AllowNVIDIAGPUScreens"
EndSection
Section "Device"
Identifier "nvidia"
Driver "nvidia"
BusID "PCI:1:0:0"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "True"
# Option "PrimaryGPU" "yes"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0:2:0"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
So, I’m left with the “default” /etc/X11/xorg.conf.d/nvidia.conf
copied from /usr/share/X11/xorg.conf.d/nvidia.conf
Sorry for too much info, but I wanted to be as clear as I could. I feel like I’m out of ideas, so that’s why I want to ask for help here. Did I miss something?
Really, all I want is to be able to use my Nvidia GPU, play games, edit videos, do whatever.