OpenGL (and OpenCL) not working anymore after Ugrading to Nvidia 470.42.01

I upgraded today to Gnome 40, Linux 5.13 and Nvidia 470.42.01. As a result, applications that use hardware acceleration of the Nvidia Card via OpenGL or OpenCL are not working anymore, or they fall back to software mode.
So applications like Firefox, Chromium shows a very poor performance after that update. Same for most electron based apps and many more.
My System:

System:    Kernel: 5.13.1-3-MANJARO x86_64 bits: 64 Desktop: GNOME 40.3 Distro: Manjaro Linux 
CPU:       Info: 6-Core model: Intel Core i7-8700K bits: 64 type: MT MCP cache: L2: 12 MiB 
           Speed: 4300 MHz min/max: 800/4700 MHz Core speeds (MHz): 1: 4300 2: 4296 3: 4302 4: 4300 5: 4300 6: 4300 7: 4230 
           8: 4300 9: 4300 10: 4301 11: 4300 12: 4301 
Graphics:  Device-1: NVIDIA TU106 [GeForce RTX 2070 Rev. A] driver: nvidia v: 470.42.01 
           Device-2: Logitech Logi 4K Stream Edition type: USB driver: hid-generic,snd-usb-audio,usbhid,uvcvideo 
           Display: x11 server: X.org 1.20.11 driver: loaded: nvidia resolution: <missing: xdpyinfo> 
           OpenGL: renderer: NVIDIA GeForce RTX 2070/PCIe/SSE2 v: 4.6.0 NVIDIA 470.42.01 

Any suggestions how to fix that? I already tried a new fresh user profile and I tried Kernel 5.10 but still same behavior.

2 Likes

Same problem on KDE, as I posted here.

Do you have opencl-nvidia installed?

Yes, I have opencl-nvidia installed.

Yes I do, 470.42.01-1. Package compiled by you, kind sir, now that I look at it through pacman -Q --info opencl-nvidia :slight_smile:

Are you using X11 or Wayland?

echo $XDG_SESSION_TYPE
1 Like

x11, as noted

can i take a look at your /etc/X11/mhwd.d/nvidia.conf ?

# nvidia-xconfig: X configuration file generated by nvidia-xconfig
# nvidia-xconfig:  version 455.45.01

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0"
    InputDevice    "Keyboard0" "CoreKeyboard"
    InputDevice    "Mouse0" "CorePointer"
EndSection

Section "Files"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Mouse0"
    Driver         "mouse"
    Option         "Protocol" "auto"
    Option         "Device" "/dev/psaux"
    Option         "Emulate3Buttons" "no"
    Option         "ZAxisMapping" "4 5"
EndSection

Section "InputDevice"
    # generated from default
    Identifier     "Keyboard0"
    Driver         "kbd"
EndSection

Section "Monitor"
    Identifier     "Monitor0"
    VendorName     "Unknown"
    ModelName      "Unknown"
    Option         "DPMS"
EndSection

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
    VendorName     "NVIDIA Corporation"
        Option "NoLogo" "1"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
    DefaultDepth    24
    SubSection     "Display"
        Depth       24
    EndSubSection
EndSection

Section "Extensions"
    Option         "COMPOSITE" "Enable"
EndSection

 
Section "InputClass"
    Identifier          "Keyboard Defaults"
    MatchIsKeyboard        "yes"
    Option              "XkbOptions" "terminate:ctrl_alt_bksp"
EndSection

Should I just re-generate this file?
I also have nvidia-xconfig: version 470.42.01

Nothing out of ordinary, just the safe default configuration, so it must be something else …

What do clinfo -l, glxinfo -B say? Does glxgears work?

How did you confirm this? Which application(s) specifically? E.g. does about:support in Firefox show a software renderer?

So, I actually checked this a second time after you said it, have done a reboot beforehand and Firefox seems to be running WebRender. WebGL examples are now also working, but before they were not. But Firefox with GPU seems like up and running overall.

There was an issue with some Flatpak apps like Telegram. Updating to org.freedesktop.Platform.GL.nvidia-470-42-01 did not solve the issue unfortunately. While OpenCL settings in Darktable (installed through community repos) are greyed out. Although, I have to say, that getting OpenCL running with Darktable needed quite some tinkering, plus they just release 3.6 version.

Overall, it never seemed like the GPU was not working entirely. When running nvtop, it showed that the GPU was indeed somewhat working. But it appears like some small parts are not working since some apps that had certain functionality relying on GPU acceleration, threw warning signs. I imagine this is yet another Nvidia f**k up, but will have to investigate further when I’ll have time.

glxgears are working.

Platform #0: NVIDIA CUDA
 `-- Device #0: NVIDIA GeForce GTX 1660 Ti

glxinfo -B:

name of display: :0
display: :0  screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 6144 MB
    Total available memory: 6144 MB
    Currently available dedicated video memory: 5344 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce GTX 1660 Ti/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 470.42.01
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6.0 NVIDIA 470.42.01
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 470.42.01
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

I was actually asking @Nexan :wink:

I have the same issue. I did notice that the X Server Settings program lists my driver as 465.31, but pacman -Q --info opencl-nvidia lists 470.42.01-1. Using X11 on the newest Manjaro Stable update with a 1070 Ti. I noticed this issue from Minecraft returning a GLFW error.

clinfo -l says:

Platform #0: NVIDIA CUDA
 `-- Device #0: NVIDIA GeForce RTX 2070

glxinfo -B

name of display: :1
display: :1  screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 8192 MB
    Total available memory: 8192 MB
    Currently available dedicated video memory: 7380 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce RTX 2070/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 470.42.01
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6.0 NVIDIA 470.42.01
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 470.42.01
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

glxgears are working like normal. But it looks not all applications are affected.

I confirm this in Firefox. In about:support in the compositor section it says Compositing WebRender (Software) and in about:config it creates the failure IDs gfx.blacklist.webrender.compositor.failureid FEATURE_FAILURE_GLXTEST_FAILED and gfx.blacklist.webrender.failureid FEATURE_FAILURE_GLXTEST_FAILED
Some other application like the flatpak version of the telegram messenger crashes instantly and then after a restart it disables OpenGL with the following message:
Bildschirmfoto vom 2021-07-14 07-53-07

I haven’t confirmed this with other applications, but the extremely poor performance is a strong indicator, I would say. For example, if I scroll within the Chromium it feels like it is rendered with 10 FPS instead of 75 as before (my Monitor has a 75 Hz refresh rate). Same in the electron based Visual Studio Code. But other Application like Intellij or most GTK Apps run smooth as before. The desktop itself also runs smoothly, when switching workspaces or moving windows around the animations feels even more fluid than before.

So the title of this thread is maybe a bit misleading. I should rename it too »Some Application can’t access OpenGL (and OpenCL) after Upgrading to Nvidia 470«

x11, I didn’t try Wayland yet (as it is disabled by default).

2 Likes

Same here (with GTX 1070).
Some games I can still launch fine, others will crash, yet others will freeze the entire system (e.g. Valheim, need to kill Steam/the game from another session to resume). Glxgears works, boa (Blades Of Agony, installed via snap) does not.
100% reproducible.

I thought at first the problem was upgrading to the 5.10 kernel (was using 5.4 before), but apparently that’s not it as the problems persist when downgrading back to 5.4.

glxinfo -B
name of display: :0
display: :0  screen: 0
direct rendering: Yes
Memory info (GL_NVX_gpu_memory_info):
    Dedicated video memory: 8192 MB
    Total available memory: 8192 MB
    Currently available dedicated video memory: 7814 MB
OpenGL vendor string: NVIDIA Corporation
OpenGL renderer string: NVIDIA GeForce GTX 1070/PCIe/SSE2
OpenGL core profile version string: 4.6.0 NVIDIA 470.42.01
OpenGL core profile shading language version string: 4.60 NVIDIA
OpenGL core profile context flags: (none)
OpenGL core profile profile mask: core profile

OpenGL version string: 4.6.0 NVIDIA 470.42.01
OpenGL shading language version string: 4.60 NVIDIA
OpenGL context flags: (none)
OpenGL profile mask: (none)

OpenGL ES profile version string: OpenGL ES 3.2 NVIDIA 470.42.01
OpenGL ES profile shading language version string: OpenGL ES GLSL ES 3.20

Also using X11, not Wayland.

Will try downgrading to nvidia 46X to see if that solves it.
Edit: Okay… how do I actually do this? There used to be a list in the Hardware Configuration where you could select the used driver, but it only lists 470 and 390 now. The previous version is apparently gone.

Even after looking into this for over an hour, I can not figure out a way to get the actually working NVIDIA 465 version back.

Why were the old versions deleted?
Why is there no way to easily select the driver version like there used to be?

Apparently, this new “mhwd-nvidia” package replaced all useful packages:

And if there is a way to install mhwd-nvidia-465xx again, I have not been able to find it.

Seriously… why would you do something this harmful and remove all options except the very latest (which is bound to cause trouble for some) and an ancient version?

Its been like that for a while now. Phil has posted a guide (I’ll try and find it) for you to be able to compile your own drivers if the latest nvidia isn’t compatible with your card

Edit here’s the link

Thanks for the link - still, what an abhorrently terrible decision.

I tried following that guide, but it appears that the latest supported version for this is 450. 465 is nowhere to be found. Or rather, it IS found, but doesn’t seem to be open for anyone, it asks me for Gitlab credentials.

Guess I’ll take 450, as it is still better than 390…

I managed to switch back to 450 (and kernel 5.4)… but to my surprise, the problems remain exactly the same.
glxgears runs no problem, so does Loop Hero, so do all (at least all I got installed) games running through Proton.
But Valheim or Blades Of Agony (if you want to test yourself: Install Wolfenstein | Blade of Agony on Linux | Snap Store ) either black-screen or crash on launch…

Which just makes me wonder what is actually the issue here… I am totally out of ideas if it is neither the NVIDIA driver (or 450 just happens to have exactly the same problem as 470, which I find unlikely) nor the kernel (I was on 5.4 for quite a while without any problems).