Автор Тема: Критическая проблема отрисовки GUI в Cinnamon  (Прочитано 8501 раз)

Оффлайн viacheslav

  • Давно тут
  • **
  • Сообщений: 78
    • Email
За последние полгода в Сизифе происходит ползучая регрессия отрисовки графического интерфейса в Cinnamon. Все больше и больше элементов (иконок, меню, подсказок, диалоговых окон) начинают отображаться с одним и тем-же видом артефакта. Сейчас это достигло критической точки, когда становится невозможным использовать Cinnamon и все графические программы в нем из-за того, что нельзя понять, что изображено на экране, и какую графическую кнопку/команду меню ты нажимаешь.

Сначала проблема касалась только значков в апплете "системного лотка" таскбара. См. вложение grfbug0.png.
Затем она стала проявляться при отрисовке подсказок и уведомлений пользователя. См. вложение grfbug2.png.
Теперь она затрагивает все небольшие меню и диалоги во всех программах независимо от тулкита. См. grfbug1.png,  grfbug3.png.
Все это не имеет отношения к пресловутому "тирингу" и проблемам машин с двумя видеокартами, где есть второе видео intel. Это десктоп и у него ровно одна видеокарта, к которой физически подключен монитор.
Найти в сети решение не удается.

Используется свободный драйвер radeon. Видеокарта AMD Radeon Turks
Последнее усугубление проблемы случилось с последним обновлением пакета xorg-drv-radeon.
Последний dist-upgrade Сизифа сделан сегодня.

$ lspci
...
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Turks XT [Radeon HD 6670/7670]
...

$ lsmod | grep radeon
radeon               1630208  23
hwmon                  20480  3 coretemp,asus_wmi,radeon
i2c_algo_bit           16384  1 radeon
drm_kms_helper        208896  1 radeon
ttm                   122880  1 radeon
drm                   495616  9 drm_kms_helper,radeon,ttm
i2c_core               77824  14 stv0299,videodev,ves1x93,drm_kms_helper,v4l2_common,ves1820,dvb_ttpci,i2c_algo_bit,dvb_core,radeon,i2c_i801,ttpci_eeprom,i2c_dev,drm

С выводом видео и поддержкой OpenGL все хорошо. Если виноват композитор cinnamon, то как это можно проверить?

* Эта же или очень похожая проблема была еще в 2014, потом исчезла "сама". См. баг https://bugzilla.altlinux.org/show_bug.cgi?id=29773
« Последнее редактирование: 28.09.2019 16:21:09 от viacheslav »

Оффлайн Vovka-Korovka

  • alt linux team
  • ***
  • Сообщений: 1 186
  • True Metal Cow
    • Email
Вообще говоря, больше похоже на проблему с драйвером или с железом, так как у остальных то работает.

Оффлайн viacheslav

  • Давно тут
  • **
  • Сообщений: 78
    • Email
Нет. потому что:
1) Проблема есть только и исключительно в cinnamon. Другие композиторы и DE на той же машине, драйвере и ядре не страдают. Интересно, что при запуске голого muffin (прибитый гвоздями wm, библиотеки которого использует cinnamon) проблемы тоже нет.
2) Карта Radeon Turks была выбрана как безвентиляторная видяха с наиболее полной и беспроблемной поддержкой свободными дровами в Linux. Я выбирал по таблице реализованных возможностей карты для используемого свободного драйвера radeon. Никаких нареканий на видеокарту у меня никогда не было, кроме этого периодически возвращающегося глюка композитора.
3) Проблема не только у меня. Это подтверждается жалобами пользователей Mint/Ubuntu, но они все время съезжают на обсуждение драйверов intel, nvidia, сборок ядер в Mint и Ubuntu,  Ubuntu PPA и т.п. Есть старые баги с похожими симптомами.

Пока все говорит о том, что это кривизна встроенного композитора cinnamon, который нельзя заменить (!). Она просто проявляется при изменениях видеодрайвера. Насколько я понял, авторы cinnamon делают упор на скорость и оптимизацию и плевать хотели на костыли и прокладки для надежности и совместимости.
« Последнее редактирование: 29.09.2019 13:52:54 от viacheslav »

Оффлайн Vovka-Korovka

  • alt linux team
  • ***
  • Сообщений: 1 186
  • True Metal Cow
    • Email
Цитировать
Нет. потому что:
1) Проблема есть только и исключительно в cinnamon. Другие композиторы и DE на той же машине, драйвере и ядре не страдают. Интересно, что при запуске голого muffin (прибитый гвоздями wm, библиотеки которого использует cinnamon) проблемы тоже нет.

Это ни разу не аргумент, так как баг в видео-драйвере может проявляться при специфических условиях.

Оффлайн rits

  • Завсегдатай
  • *
  • Сообщений: 1 099
  • ITS
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Turks XT [Radeon HD 6670/7670]
Чинамовскую де не пользовал ..., но уменя  карта с вентилятором.

Оффлайн viacheslav

  • Давно тут
  • **
  • Сообщений: 78
    • Email
баг в видео-драйвере может проявляться при специфических условиях.
Это хорошо бы протестировать, только я не знаю как. Подскажете?

Пока таким условием является запущенный cinnamon. Если сделать compiz --replace без перезапуска X-ов, то баг исчезает, хотя драйвер по моему разумению работает непрерывно. Его не видно в голом muffin (а это код, который работает и в cinnamon), который запускается вручную после вытеснения cinnamon-а compiz-ом и прерывания compiz по Ctrl-C. Что еще нужно посмотреть? 
« Последнее редактирование: 29.09.2019 21:01:25 от viacheslav »

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
1) Проблема есть только и исключительно в cinnamon. Другие композиторы и DE на той же машине, драйвере и ядре не страдают. Интересно, что при запуске голого muffin (прибитый гвоздями wm, библиотеки которого использует cinnamon) проблемы тоже нет.

Используйте cinnamon2D (сеанс при запуске), т.е. на программном ускорении.

Оффлайн viacheslav

  • Давно тут
  • **
  • Сообщений: 78
    • Email
Используйте cinnamon2D (сеанс при запуске)
!!! Этот глюк происходит и при запуске в "2D" режиме. Я дважды запускал Cinnamon в 2D и нормальном режимах и никакой разницы не заметил.

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
!!! Этот глюк происходит и при запуске в "2D" режиме. Я дважды запускал Cinnamon в 2D и нормальном режимах и никакой разницы не заметил.

Очень интересно. А в gnome3 и kde5, всё ок? Если так, нужно выяснить, действительно ли gnome3 и kde5 используют аппаратное ускорение.

Оффлайн viacheslav

  • Давно тут
  • **
  • Сообщений: 78
    • Email
Очень интересно. А в gnome3 и kde5, всё ок?
Поставил gnome3 (Теперь придется чистить систему от его мусора) и выяснилось, что проблема в нем тоже есть, но не сразу заметна.
Вот, например, audacity (см. вложение grfbug-gno3-1.png) в gnome3 нормально показывает свой диалог выхода.
В файловом менеджере nemo под gnome3 меню сломано, но его никто не видит. У nautilus меню другое.
Также и с другими программами. Глюк возможен, но встречается редко.
Заметны испорченные подсказки (см. вложение grfbug-gno3-3.png). 
В gnome3 на Xorg тоже самое.
« Последнее редактирование: 01.10.2019 13:02:13 от viacheslav »

Оффлайн Антон Мидюков

  • alt linux team
  • ***
  • Сообщений: 5 183
  • antohami@
Вот видите. Виноват видеодрайвер. С таким драйвером только что полегче использовать.

Оффлайн viacheslav

  • Давно тут
  • **
  • Сообщений: 78
    • Email
Вот видите. Виноват видеодрайвер. С таким драйвером только что полегче использовать.
Накатал жалобу на драйвер https://bugs.freedesktop.org/show_bug.cgi?id=111889.

Почему тогда этот же драйвер не глючит с compiz? Почему глюки возникают и пропадают синхронно с запуском _некоторых_ "композиторов" (можно без перезапуска xorg командой xxx --replace)?
Пока что наблюдаемые факты указывают, что проблема в некоем компоненте общем для cinnamon и gnome3, но отличающемся в mate. Драйвер с переходом к mate и голому muffin не заменяется.

Если же действительно виноват драйвер radeon, то КАК откатить и зафиксировать версию драйвера? dist-upgrade все-время зацепляет ядро и xorg (особенно kernel-headers) и будет подсовывать дефектный код.

И вообще качество ядер 4.x.x. ниже всякого плинтуса. Глюк с USB-винчестерами, Глюк с видео, Труднопрослеживаемые глюки с управлением энергией. И все это только усугубляется с обновлениями
« Последнее редактирование: 03.10.2019 09:33:10 от viacheslav »