Wine error "egl: failed to create dri2 screen"

Using OpenSuse Leap 16.0.
Wine does not start any more: when launching “winecfg”, it prints this output:

00ac:err:ntoskrnl:ZwLoadDriver failed to create driver L"\\Registry\\Machine\\System\\CurrentControlSet\\Services\\winebth": c00000e5
003c:fixme:service:scmdatabase_autostart_services Auto-start service L"winebth" failed to start: 1359
libEGL warning: egl: failed to create dri2 screen
libEGL warning: egl: failed to create dri2 screen

I found hints in the web that it might be related to NVidia drivers, and they mentioned the command “eglinfo -B”.

The output of “eglinfo -B” ends with the same error:

GBM platform:
EGL API version: 1.5
EGL vendor string: NVIDIA
EGL version string: 1.5
EGL client APIs: OpenGL_ES OpenGL
OpenGL core profile vendor: NVIDIA Corporation
OpenGL core profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL core profile version: 4.6.0 NVIDIA 580.126.09
OpenGL core profile shading language version: 4.60 NVIDIA
OpenGL compatibility profile vendor: NVIDIA Corporation
OpenGL compatibility profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL compatibility profile version: 4.6.0 NVIDIA 580.126.09
OpenGL compatibility profile shading language version: 4.60 NVIDIA
OpenGL ES profile vendor: NVIDIA Corporation
OpenGL ES profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL ES profile version: OpenGL ES 3.2 NVIDIA 580.126.09
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

Wayland platform:
eglinfo: eglInitialize failed

X11 platform:
EGL API version: 1.5
EGL vendor string: NVIDIA
EGL version string: 1.5
EGL client APIs: OpenGL_ES OpenGL
OpenGL core profile vendor: NVIDIA Corporation
OpenGL core profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL core profile version: 4.6.0 NVIDIA 580.126.09
OpenGL core profile shading language version: 4.60 NVIDIA
OpenGL compatibility profile vendor: NVIDIA Corporation
OpenGL compatibility profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL compatibility profile version: 4.6.0 NVIDIA 580.126.09
OpenGL compatibility profile shading language version: 4.60 NVIDIA
OpenGL ES profile vendor: NVIDIA Corporation
OpenGL ES profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL ES profile version: OpenGL ES 3.2 NVIDIA 580.126.09
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

Surfaceless platform:
EGL API version: 1.5
EGL vendor string: NVIDIA
EGL version string: 1.5
EGL client APIs: OpenGL_ES OpenGL
OpenGL core profile vendor: NVIDIA Corporation
OpenGL core profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL core profile version: 4.6.0 NVIDIA 580.126.09
OpenGL core profile shading language version: 4.60 NVIDIA
OpenGL compatibility profile vendor: NVIDIA Corporation
OpenGL compatibility profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL compatibility profile version: 4.6.0 NVIDIA 580.126.09
OpenGL compatibility profile shading language version: 4.60 NVIDIA
OpenGL ES profile vendor: NVIDIA Corporation
OpenGL ES profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL ES profile version: OpenGL ES 3.2 NVIDIA 580.126.09
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

Device platform:
Device #0:

Platform Device platform:
EGL API version: 1.5
EGL vendor string: NVIDIA
EGL version string: 1.5
EGL client APIs: OpenGL_ES OpenGL
OpenGL core profile vendor: NVIDIA Corporation
OpenGL core profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL core profile version: 4.6.0 NVIDIA 580.126.09
OpenGL core profile shading language version: 4.60 NVIDIA
OpenGL compatibility profile vendor: NVIDIA Corporation
OpenGL compatibility profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL compatibility profile version: 4.6.0 NVIDIA 580.126.09
OpenGL compatibility profile shading language version: 4.60 NVIDIA
OpenGL ES profile vendor: NVIDIA Corporation
OpenGL ES profile renderer: NVIDIA GeForce RTX 3070/PCIe/SSE2
OpenGL ES profile version: OpenGL ES 3.2 NVIDIA 580.126.09
OpenGL ES profile shading language version: OpenGL ES GLSL ES 3.20

Device #1:

Platform Device platform:
libEGL warning: egl: failed to create dri2 screen
libEGL warning: egl: failed to create dri2 screen
Speicherzugriffsfehler (Speicherabzug geschrieben)

(the last line tranlates to something like “memory access error”).

My computer has only one graphics deviec (and no onboard device as far as I remember - it is a AMD board), so I wonder what this “device #1” could be.

The output of zypper se -s nvidia is too long to post it here.

Myrlyn and the OpenSuse software update notification show that an NVidia update is available:

But I always use “zypper up” to update the NVidia driver, as in OpenSuse 15.6 it broke the driver occasionally.
And “zypper up” prints that it does not update the NVidia driver:

Dienst 'NVIDIA' wird aktualisiert.
Dienst 'openSUSE' wird aktualisiert.
Repository-Daten werden geladen...
Installierte Pakete werden gelesen...

Die folgenden 15 Paketaktualisierungen werden NICHT installiert:
  liblzma5 liblzma5-x86-64-v3 libnvidia-egl-gbm1 libnvidia-gpucomp nvidia-common-G06 nvidia-compute-G06
  nvidia-compute-utils-G06 nvidia-gl-G06 nvidia-modprobe nvidia-open-driver-G06-signed-kmp-default
  nvidia-open-driver-G06-signed-kmp-meta nvidia-userspace-meta-G06 nvidia-video-G06 xz xz-lang
Keine auszuführenden Aktionen.

I think there was a Wine update to 11.4 this week (I installed it from the repo at https://download.opensuse.org/repositories/Emulators:/Wine/16.0/ ). And I recently plugged in my Steam VR set - but I unplugged it now and rebooted - the error continues.

Do you have further ideas what to do?

Do you have 32 bit enabled for Wine?

Yes. I followed this guide: https://wine.htmlvalidator.com/install-wine-on-opensuse-leap-16.0.html - you probably mean the chapter “Enable IA-32 Execution Layer”?

Some days ago, it worked.

Still broken…

There was a Wine update to “11.7-lp160.1982.1” a few days ago, which did not help.

I also tried to reinstall the NVidia driver with this command - did not help:

rpm -e $(rpm -qa | grep -e ^nvidia -e ^libnvidia)
zypper in nvidia-open-driver-G06-signed-kmp-meta

In the “Cockpit” logs view, I found this error after calling “libeglinfo -B”:

systemd-coredump
Process 5877 (eglinfo) of user 0 dumped core.

Stack trace of thread 5877:
#0  0x00007f43508c3ca9 n/a (libgallium-24.3.3.so + 0xc3ca9)
#1  0x00007f43508bf3d5 driCreateNewScreen3 (libgallium-24.3.3.so + 0xbf3d5)
#2  0x00007f43530798fb n/a (libEGL_mesa.so.0 + 0x308fb)
#3  0x00007f435307af57 n/a (libEGL_mesa.so.0 + 0x31f57)
#4  0x00007f435307a108 n/a (libEGL_mesa.so.0 + 0x31108)
#5  0x00007f43530695c6 n/a (libEGL_mesa.so.0 + 0x205c6)
#6  0x000056540af74efd n/a (/usr/bin/eglinfo + 0xbefd)
#7  0x000056540af6d84a n/a (/usr/bin/eglinfo + 0x484a)
#8  0x00007f4359df7340 __libc_start_call_main (libc.so.6 + 0x2a340)
#9  0x00007f4359df7409 __libc_start_main@@GLIBC_2.34 (libc.so.6 + 0x2a409)
#10 0x000056540af6d8e5 n/a (/usr/bin/eglinfo + 0x48e5)
ELF object binary architecture: AMD x86-64

Please show
zypper se -si nvidia

I think I found a workaround here:

Starting “eglinfo” with this command works:

__EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/10_nvidia.json eglinfo -B

Same for Wine:

__EGL_VENDOR_LIBRARY_FILENAMES=/usr/share/glvnd/egl_vendor.d/10_nvidia.json wine winecfg

According to the linked Mesa issue, this is fixed in Mesa 25.0.3. But Leap 16.0 brings Mesa 24.3.3.

Is there a better solution to this problem? As it stopped working some weeks ago, there must have been a change to my system (probably not by me, but by some software updates or by me accidentally plugging in my Steam VR set?). Do you have any idea what this change could be and how to revert it?

1 Like

@hui

Output of zypper se -si nvidia:

Repository-Daten werden geladen...
Installierte Pakete werden gelesen...

S  | Name                                      | Type  | Version                                 | Arch   | Repository
---+-------------------------------------------+-------+-----------------------------------------+--------+---------------------
i  | kernel-firmware-nvidia                    | Paket | 20250516-160000.2.2                     | noarch | repo-oss (16.0)
i  | libnvidia-egl-gbm1                        | Paket | 1.1.3-lp160.10.1                        | x86_64 | repo-non-free (16.0)
i  | libnvidia-egl-wayland1                    | Paket | 1.1.22-lp160.56.1                       | x86_64 | repo-non-free (16.0)
i  | libnvidia-egl-x111                        | Paket | 1.0.5-lp160.24.1                        | x86_64 | repo-non-free (16.0)
i  | libnvidia-gpucomp                         | Paket | 580.126.18-lp160.49.1                   | x86_64 | repo-non-free (16.0)
i  | nvidia-common-G06                         | Paket | 580.126.18-lp160.49.1                   | x86_64 | repo-non-free (16.0)
i  | nvidia-compute-G06                        | Paket | 580.126.18-lp160.49.1                   | x86_64 | repo-non-free (16.0)
i  | nvidia-compute-utils-G06                  | Paket | 580.126.18-lp160.49.1                   | x86_64 | repo-non-free (16.0)
i  | nvidia-gl-G06                             | Paket | 580.126.18-lp160.49.1                   | x86_64 | repo-non-free (16.0)
i  | nvidia-modprobe                           | Paket | 580.126.18-lp160.23.1                   | x86_64 | repo-non-free (16.0)
i  | nvidia-open-driver-G06-signed-kmp-default | Paket | 580.126.18_k6.12.0_160000.26-160000.1.1 | x86_64 | repo-oss (16.0)
i+ | nvidia-open-driver-G06-signed-kmp-meta    | Paket | 580.126.18-lp160.44.1                   | x86_64 | repo-non-free (16.0)
i  | nvidia-persistenced                       | Paket | 580.126.18-lp160.3.1                    | x86_64 | repo-non-free (16.0)
i  | nvidia-userspace-meta-G06                 | Paket | 580.126.18-lp160.36.1                   | x86_64 | repo-non-free (16.0)
i  | nvidia-video-G06                          | Paket | 580.126.18-lp160.49.1                   | x86_64 | repo-non-free (16.0)
i+ | openSUSE-repos-Leap-NVIDIA                | Paket | 20250714.a450212-lp160.3.1              | x86_64 | repo-oss (16.0)

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.