В Ubuntu устраняют пятилетний баг режима ожидания для NVIDIA на X11, Wayland пока отстает

2025-04-07 363 комментарии
В Ubuntu 25.04 частично решат проблему с повреждением текстур на видеокартах NVIDIA при выходе из режима ожидания. Исправление касается только X11, а в Wayland сбои сохранятся до обновления Mutter.

В дистрибутиве Ubuntu планируется улучшение работы режима ожидания (suspend) и возвращения из него (resume) для пользователей видеокарт NVIDIA с рабочим окружением GNOME по умолчанию. В цикле разработки Ubuntu 25.04 намечено устранить баг, о котором сообщалось в мае 2020 года. Проблема связана с повреждением или отсутствием текстур при выходе из режима ожидания, а также при переключении виртуальных терминалов или пользователей. Исправление будет реализовано для сессий GNOME на X11, тогда как для Wayland потребуется доработка композitorа Mutter.

Описание бага с текстурами на NVIDIA

Сообщение о баге в Ubuntu, заявленном более пяти лет назад, указывало на сбои в отображении текстур при использовании драйверов NVIDIA для Linux. После выхода из режима ожидания пользователи сталкивались с искажениями или пропажей графических элементов. Подобные ошибки нередки для связки режима ожидания и NVIDIA, но их устранение продвигается. Инженер Canonical из команды Ubuntu Desktop Даниэль ван Вугт сообщил о текущем прогрессе. В сессиях X11 баг удается минимизировать, тогда как Wayland требует дополнительных усилий.

Различия в реализации X11 и Wayland

Ван Вугт провел аудит кода Mutter — композитора GNOME. Выяснилось, что поддержка режима ожидания для NVIDIA в Wayland-сессиях не настроена. В Xorg используется GLX, а в Wayland — EGL, что усложняет задачу. Инженер отметил, что в цикле Ubuntu 25.04 стабильной работы режима ожидания на Wayland с драйверами NVIDIA не будет. Полное решение связано с внедрением ARB_robustness в Mutter, что пока отложено на будущее.

Решение проблемы

Тестирование на драйвере NVIDIA 570 показало, что сессии Xorg успешно справляются с багом. Однако в Ubuntu 24.10 и более поздних версиях экран логина не использует Xorg, из-за чего он уязвим к тем же сбоям, что и Wayland. Для обхода проблемы можно отредактировать файл /etc/gdm3/custom.conf, раскомментировав строку "WaylandEnable=false". Это переключает систему на Xorg, устраняя неполадки.

Перспективы для Wayland

Для Wayland рассматривается настройка параметра NVreg_PreserveVideoMemoryAllocations в драйвере NVIDIA как временное решение. В долгосрочной перспективе ожидается обновление Mutter с поддержкой OpenGL "robustness" для полного устранения бага. Пока пользователям Wayland в GNOME придется мириться с ограничениями.

© . По материалам phoronix
Комментарии и отзывы

Нашли ошибку?

Новое на сайте