Bug 49553 - В сессии Wayland не отображаются Х11-окна приложений на картах Nvidia
Summary: В сессии Wayland не отображаются Х11-окна приложений на картах Nvidia
Status: CLOSED FIXED
Alias: None
Product: Sisyphus
Classification: Development
Component: Mesa (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Valery Inozemtsev
QA Contact: qa-sisyphus
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-02-28 18:18 MSK by Anton
Modified: 2024-03-01 16:37 MSK (History)
5 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Anton 2024-02-28 18:18:04 MSK
После обновления Mesa до версии 24.0 приложения, работающие по оконному протоколу X11, перестали отображать окна в сессии Wayland на картах Nvidia (на проприетарных драйверах). Напр., Codium, VLC, утилита glxgears.

В системном логе заполнено повторяющимися ошибками:

...
Feb 19 12:23:26 meteor-a gnome-shell[20556]: libEGL warning: egl: failed to create dri2 screen
Feb 19 12:23:26 meteor-a kernel: mutter-x11-fram[20556]: segfault at 0 ip 0000000000000000 sp 00007ffc30983758 error 14 in mutter-x11-frames[5581bd76f000+3000] likely on CPU 2 (core 2, socket 0)
Feb 19 12:23:26 meteor-a kernel: Code: Unable to access opcode bytes at 0xffffffffffffffd6.
Feb 19 12:23:27 meteor-a gnome-shell[20563]: libEGL warning: egl: failed to create dri2 screen
Feb 19 12:23:27 meteor-a gnome-shell[20570]: libEGL warning: egl: failed to create dri2 screen
...


Проблема отмечена в багтрекерах Месы, Вулкана:
https://gitlab.freedesktop.org/mesa/mesa/-/issues/10624
https://gitlab.freedesktop.org/mesa/mesa/-/issues/10513
и др. по ссылкам



Система:

OS: ALT Regular Sisyphus x86_64 
Kernel: 6.6.17-un-def-alt1
DE: GNOME 45.4
CPU: Intel i7-6700K (8) @ 4.200GHz 
GPU: NVIDIA GeForce GTX 980 
Memory: 2192MiB / 32034MiB 
Driver: 535.154.05
Display: Wayland


Вывод inxi -G

Graphics:
  Device-1: NVIDIA GM204 [GeForce GTX 980] driver: nvidia v: 535.154.05
  Display: wayland server: X.Org v: 1.23.2.4 with: Xwayland v: 23.2.4 driver: X:
    loaded: modesetting,nouveau,nvidia unloaded: fbdev,vesa
    gpu: nvidia,nvidia-nvswitch resolution: 1: 1920x1200~60Hz 2: 1024x768~60Hz
  API: EGL v: 1.5 drivers: kms_swrast platforms: gbm
  API: OpenGL v: 4.6.0 compat-v: 4.5 vendor: nvidia mesa v: 535.154.05
    renderer: NVIDIA GeForce GTX 980/PCIe/SSE2
  API: Vulkan v: 1.3.268 drivers: nvidia,llvmpipe surfaces: xcb,xlib
Comment 1 Anton 2024-02-28 20:50:08 MSK
Ещё информация с багтрекера Месы.
Пишут, что, вроде как, всё-таки в Месе после обновления 24.0 это случилось, но на последних драйверах от Нвидиа, проблема не проявляется.



To be honest, I think that it isn't yet clear. The bugs were reported on mesa first (#10624 (closed), #10625 (closed), #10659 (closed)), then there was the idea that the bug was on vulkan-loader and then again it was confirmed to be a mesa bug, but now, without any move from mesa or vulkan-loader it isn't happening anymore on the latest Nvidia drivers version (550.54.14) for several users including me.

https://gitlab.freedesktop.org/mesa/mesa/-/issues/10513#note_2303039


(в посте ссылки на соответствующие репорты ошибок)
Comment 2 Sergey V Turchin 2024-03-01 11:41:35 MSK
"this fixes the Nvidia/Xwayland issues when applied on top of 24.0.2."
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27834
Comment 3 Sergey V Turchin 2024-03-01 11:42:23 MSK
Ой, не на тот пакет повесил.
Comment 4 Valery Inozemtsev 2024-03-01 12:21:00 MSK
mesa-24.0.2 уже в сизифе
Comment 5 Anton 2024-03-01 16:37:36 MSK
После обновления проблема не проявляется.
Х11 окна отображаются, в логах вышеприведённые ошибки не отображаются.

Обновил систему, обновил ядро до 6.6.18-un-def-alt1, вместе с ним обновились и драйверы Нвидиа до 550.54.14.

Меса 24.0.2.


Однако, при запуске Хромиум и Ябраузер - а они у меня запускаются с параметром --enable-vulkan=Enabled - в системном логе есть ошибки:

...
Mar 01 18:09:09 meteor-a chromium-devel.desktop[3516]: [3516:3516:0301/180909.959555:ERROR:vulkan_swap_chain.cc(404)] vkQueuePresentKHR() failed: -1000001004
Mar 01 18:09:15 meteor-a yandex-browser.desktop[3782]: [3827:3827:0301/180915.135257:ERROR:vulkan_swap_chain.cc(404)] vkQueuePresentKHR() failed: -1000001004
...

т.е. что-то связано с обсуждаемыми в багтрекерах VK_EXT_ и VK_KHR_.


Ну и, как я понял, в корне проблема пока не решена:

"this is a bandaid fix that allows users (zink) to actually call the
functions intended to be called. the real fix would be to figure out
which extensions are enabled on the device and then only GPA the
functions associated with those extensions

that's too hard though so I'm slapping some flex tape on it"

https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/27834#what-does-this-mr-do-and-why