Bug 49112

Summary: RGB-шум на миниатюрах окон при Alt-Tab
Product: Альт Рабочая станция K Reporter: dfpl <lubyagin>
Component: Ошибки работыAssignee: Sergey V Turchin <zerg>
Status: CLOSED FIXED QA Contact: qa-p8 <qa-p8>
Severity: minor    
Priority: P5 CC: lubyagin
Version: 10.2   
Hardware: x86_64   
OS: Linux   
Attachments:
Description Flags
Скриншот миниатюр в левой части экрана (RGB noise)
none
Скриншот плеера Haruna после sleep (RGB noise)
none
Снимок экрана при выходе из hibernation с undef-ядром
none
Яндекс.Браузер отмапился поверх нижней панели приложений none

Description dfpl 2024-01-18 13:30:03 MSK
Created attachment 15383 [details]
Скриншот миниатюр в левой части экрана (RGB noise)

При переключении из Konsole по Alt-Tab слева вывелись миниатюры, заполненные RGB-шумом. Как будто, туда бинарник попал (наподобие cat vmlinuz > /dev/fb0). Воспроизвести не удалось, встретилась такая ситуация лишь единожды. Прикладываю картинку для иллюстрации, аналогичный шум в рамки миниатюр сгенерировал в GIMP.
Comment 1 Sergey V Turchin 2024-01-19 13:34:08 MSK
Какой видеодрайвер?
Comment 2 dfpl 2024-01-19 15:21:42 MSK
(Ответ для Sergey V Turchin на комментарий #1)
> Какой видеодрайвер?
# lspci | grep -ie vga
01:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce GT 520] (rev a1)

dmesg:
[    0.012419] AGP: No AGP bridge found
[    0.048796] AGP: No AGP bridge found
[    0.048797] AGP: Node 0: aperture [bus addr 0xd8000000-0xd9ffffff] (32MB)
[    0.048800] Aperture pointing to e820 RAM. Ignoring.
[    0.048800] AGP: Your BIOS doesn't leave an aperture memory hole
[    0.048801] AGP: Please enable the IOMMU option in the BIOS setup
[    0.048801] AGP: This costs you 64MB of RAM
[    0.048804] AGP: Mapping aperture over RAM [mem 0xd8000000-0xdbffffff] (65536KB)
[    0.770056] Linux agpgart interface v0.103
[    2.126802] nvidia_modeset: loading out-of-tree module taints kernel.
[    2.126814] nvidia_modeset: module license 'NVIDIA' taints kernel.
[    2.126815] Disabling lock debugging due to kernel taint
[    2.128135] nvidia_modeset: module verification failed: signature and/or required key missing - tainting kernel
[    2.128202] nvidia_modeset: Unknown symbol nvidia_register_module (err -2)
[    2.128234] nvidia_modeset: Unknown symbol nvidia_get_rm_ops (err -2)
[    2.128262] nvidia_modeset: Unknown symbol nvidia_unregister_module (err -2)
[    9.651690] nvidia-nvlink: Nvlink Core is being initialized, major device number 242
[    9.652133] nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem
[    9.651690] nvidia-nvlink: Nvlink Core is being initialized, major device number 242
[    9.652133] nvidia 0000:01:00.0: vgaarb: changed VGA decodes: olddecodes=io+mem,decodes=none:owns=io+mem
[    9.652510] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  390.157  Wed Oct 12 09:19:07 UTC 2022 (using threaded interrupts)
[    9.682628] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  390.157  Wed Oct 12 09:15:25 UTC 2022
[    9.697444] CE: hpet increased min_delta_ns to 30172 nsec
[    9.701969] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[    9.701977] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 0
[   11.066613] caller _nv001015rm+0x1bf/0x1f0 [nvidia] mapping multiple BARs
[20089.142781] NVRM: client does not support versioning!!
[21958.098578] videodev: Linux video capture interface: v2.00

lsmod | grep -iEe '(video|nvidia)'
uvcvideo              126976  0
videobuf2_vmalloc      16384  1 uvcvideo
videobuf2_memops       16384  1 videobuf2_vmalloc
videobuf2_v4l2         36864  1 uvcvideo
videobuf2_common       73728  4 videobuf2_vmalloc,videobuf2_v4l2,uvcvideo,videobuf2_memops
videodev              294912  3 videobuf2_v4l2,uvcvideo,videobuf2_common
mc                     61440  5 videodev,snd_usb_audio,videobuf2_v4l2,uvcvideo,videobuf2_common
nvidia_drm             57344  2
nvidia_modeset       1060864  43 nvidia_drm
nvidia              15880192  1492 nvidia_modeset
ipmi_msghandler        69632  2 ipmi_devintf,nvidia
vboxvideo              32768  0
drm_vram_helper        20480  1 vboxvideo
drm_ttm_helper         16384  2 drm_vram_helper,vboxvideo
video                  61440  1 nvidia
drm_kms_helper        204800  3 drm_vram_helper,vboxvideo,nvidia_drm
drm                   667648  9 drm_kms_helper,drm_vram_helper,vboxvideo,drm_ttm_helper,nvidia_drm,ttm
wmi                    32768  2 video,wmi_bmof
Comment 3 dfpl 2024-01-19 15:45:47 MSK
Сегодня наблюдал эту ситуацию здесь же, чуть в другом формате:
рандомом заполнена оказалась нижняя треть нижней миниатюры (я быстро переключал Alt+Tab). Но после прокрутки по второму кругу, картинки-миниатюры (нижняя) отрисовались правильно.
Comment 4 Sergey V Turchin 2024-01-19 16:05:43 MSK
(Ответ для dfpl на комментарий #2)
> 01:00.0 VGA compatible controller: NVIDIA Corporation GF119 [GeForce GT 520]
Попробуйте ядро std-def.
Comment 5 Sergey V Turchin 2024-01-19 16:07:39 MSK
Ещё можно попробовать в /etc/modprobe.d/nvidia_common.conf сделать modeset=0
Comment 6 dfpl 2024-01-23 22:27:28 MSK
Created attachment 15398 [details]
Скриншот плеера Haruna после sleep (RGB noise)
Comment 7 dfpl 2024-01-23 22:28:16 MSK
Удалось воспроизвести. RGB-шум появился (см. скриншот) после возвращения из режима Сна в видеоплеере Haruna.
Comment 8 Sergey V Turchin 2024-01-24 09:35:56 MSK
Вы пробовали мои предложения?
Comment 9 dfpl 2024-01-24 09:40:32 MSK
(Ответ для Sergey V Turchin на комментарий #8)
> Вы пробовали мои предложения?

Да, пробовал сменить ядро на -std. Доступные разрешения экрана при этом сузились до SVGA-режимов (1024x768 и менее).

А перед modeset=0, может быть, надо писать префикс: nvidia.modeset=0 ?
Comment 10 Sergey V Turchin 2024-01-24 09:45:24 MSK
(Ответ для dfpl на комментарий #9)
> Да, пробовал сменить ядро на -std. Доступные разрешения экрана при этом
> сузились до SVGA-режимов (1024x768 и менее).
Баг при этом воспроизводится?

> А перед modeset=0, может быть, надо писать префикс: nvidia.modeset=0 ?
Т.е. вы даже не смотели в этот файл.
Comment 11 dfpl 2024-01-24 10:38:32 MSK
(Ответ для Sergey V Turchin на комментарий #10)
> > Да, пробовал сменить ядро на -std. Доступные разрешения экрана при этом
> > сузились до SVGA-режимов (1024x768 и менее).
> Баг при этом воспроизводится?
Не успел проверить, так как его воспроизводимость выявил позже.
В течение ближайших двух дней проверю в SVGA-режиме (компьютер был занят).

> > А перед modeset=0, может быть, надо писать префикс: nvidia.modeset=0 ?
> Т.е. вы даже не смотели в этот файл.
Такой файл у меня отсутствует. Поэтому и спрашиваю про префикс. Ещё раз проверю, и отпишусь.
# ls -l
итого 8
-rw-r--r-- 1 root root 457 ноя 20  2022 alsa-modindex.conf
-rw-r--r-- 1 root root  23 сен 13 15:49 blacklist-rtl8821ce.conf
Comment 12 Sergey V Turchin 2024-01-24 10:47:26 MSK
(Ответ для dfpl на комментарий #11)
> Такой файл у меня отсутствует.
Обновите систему.
Ядра в том числе.

После укажите, на каком ядре un-def и на каком std-def воспроизводится ошибка.
Comment 13 dfpl 2024-01-24 12:44:16 MSK
Created attachment 15399 [details]
Снимок экрана при выходе из hibernation с undef-ядром

После обновления ~800 пакетов, режимы сна и гибернации стали зависать на этапе загрузки системы. Один раз выдался этот дамп.
Comment 14 dfpl 2024-01-24 12:46:41 MSK
(Ответ для Sergey V Turchin на комментарий #12)
> > Такой файл [] у меня отсутствует.
> Обновите систему.
> Ядра в том числе.
> После укажите, на каком ядре un-def и на каком std-def воспроизводится
> ошибка.
Начну с хорошей новости =)
Обновлены пакеты и modeset установлен в 0 - это не повлияло.
Но! При загрузке в SVGA-режиме (ядро kernel-image-std-def) и после выхода из режима сна, окно видеоплеера (mpv) восстанавливается нормально, без RGB-шума.
Под undef-ядром, выход из режима сна(гибернации) по-прежнему оставляет шум в плеерах mpv и Haruna.

Из плохого - после обновления ~800 пакетов, выход из режима сна и режима гибернации стал намертво зависать.
Один раз выдался такой дамп: см. скриншот.

Понаблюдаю (при случае) ситуацию под другими приложениями, работающими с экранным буфером. Как встретится что-то подобное, отпишу.

Кстати, немного отклоняясь от темы: заметны различия в запуске mpv под std и undef-ядром.

1) mpv-плеер под std-ядром:

$ mpv ****.mp4 
 (+) Video --vid=1 (*) (h264 1280x720 30.000fps)
 (+) Audio --aid=1 (*) (aac 2ch 44100Hz)
libEGL warning: DRI2: failed to authenticate
[vo/gpu/opengl] Suspected software renderer or indirect context.
[vo/gpu/opengl] Suspected software renderer or indirect context.
[vo/gpu/drm] VT_GETMODE failed: Inappropriate ioctl for device
[vo/gpu/drm] Failed to set up VT switcher. Terminal switching will be unavailable.
[vo/gpu/drm] Listing DRM devices with drmGetDevices failed! (No such file or directory)
[vo/gpu/drm] Failed to find a usable DRM primary node!
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
[vo/gpu/libplacebo] Found no suitable device, giving up.
[vo/gpu/libplacebo] Failed initializing vulkan device
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
libEGL warning: DRI2: failed to authenticate
[vo/gpu-next/opengl] Suspected software renderer or indirect context.
[vo/gpu-next/opengl] Suspected software renderer or indirect context.
[vo/gpu-next/drm] Can't handle VT release - signal already used
[vo/gpu-next/drm] Failed to set up VT switcher. Terminal switching will be unavailable.
[vo/gpu-next/drm] Listing DRM devices with drmGetDevices failed! (No such file or directory)
[vo/gpu-next/drm] Failed to find a usable DRM primary node!
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
[vo/gpu-next/libplacebo] Found no suitable device, giving up.
[vo/gpu-next/libplacebo] Failed initializing vulkan device
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
Xlib:  extension "NV-GLX" missing on display ":0".
[vo/vdpau] Error when calling vdp_device_create_x11: 1
[vo/xv] No Xvideo support found.
[vo/sdl] Using opengl
[vo/sdl] Warning: this legacy VO has bad performance. Consider fixing your graphics drivers, or not forcing the sdl VO.
[W][00079.492634] pw.conf      | [          conf.c: 1005 try_load_conf()] can't load config client-rt.conf: No such file or directory
[E][00079.492768] pw.conf      | [          conf.c: 1029 pw_conf_load_conf_for_context()] can't load config client-rt.conf: No such file or directory
AO: [pulse] 44100Hz stereo 2ch float
VO: [sdl] 1280x720 yuv420p
AV: 00:00:01 / 00:59:56 (0%) A-V:  0.000 Dropped: 2

Exiting... (Quit)

2) mpv-плеер под undef-ядром:

$ mpv  ****.mp4 
 (+) Video --vid=1 (*) (h264 1280x720 30.000fps)
 (+) Audio --aid=1 (*) (aac 2ch 44100Hz)
[W][01254.992689] pw.conf      | [          conf.c: 1005 try_load_conf()] can't load config client-rt.conf: No such file or directory
[E][01254.992811] pw.conf      | [          conf.c: 1029 pw_conf_load_conf_for_context()] can't load config client-rt.conf: No such file or directory
AO: [pulse] 44100Hz stereo 2ch float
VO: [gpu] 1280x720 yuv420p
(Paused) AV: 00:00:03 / 00:59:56 (0%) A-V:  0.000

Haruna в SVGA-режиме не запустился.
Comment 15 Sergey V Turchin 2024-01-24 13:54:04 MSK
(Ответ для dfpl на комментарий #14)

[...]
> Из плохого - после обновления ~800 пакетов, выход из режима сна и режима
> гибернации стал намертво зависать.
> Один раз выдался такой дамп: см. скриншот.
На каких конкретно ядрах?
Comment 16 dfpl 2024-01-24 14:50:24 MSK
(Ответ для Sergey V Turchin на комментарий #15)
> На каких конкретно ядрах?
$ uname -a
Linux dm 6.1.57-un-def-alt1 #1 SMP PREEMPT_DYNAMIC Wed Oct 11 00:30:07 UTC 2023 x86_64 GNU/Linux
# apt-get remove kernel-image-std-def
Чтение списков пакетов... Завершено
Построение дерева зависимостей... Завершено
Выбрано kernel-image-std-def#2:5.10.208-alt1:p10+338248.100.1.1@1705355502 для 'kernel-image-std-def'
Следующие пакеты будут УДАЛЕНЫ:
  kernel-image-std-def#2:5.10.208-alt1:p10+338248.100.1.1@1705355502*
0 будет обновлено, 0 новых установлено, 1 пакетов будет удалено и 0 не будет обновлено.
Comment 17 dfpl 2024-01-24 15:02:03 MSK
(Ответ для Sergey V Turchin на комментарий #15)
> (Ответ для dfpl на комментарий #14)
> 
> [...]
> > Из плохого - после обновления ~800 пакетов, выход из режима сна и режима
> > гибернации стал намертво зависать.
Уточню. Зависания наблюдались после update лишь несколько раз, сейчас на undef-ядре снова всё нормально.

Наблюдалось также вертикальное отражение контента - окно Яндекс.Браузера после выхода из гибернации (23.9.1.1033 stable corp (64-bit)) рисовало себя "вверх ногами". Прикладываю скриншот с перевёрнутыми буквами. Если получится сделать более красивый - оформлю отдельным багом.
Comment 18 dfpl 2024-01-24 15:04:47 MSK
Created attachment 15400 [details]
Яндекс.Браузер отмапился поверх нижней панели приложений

Наблюдается такой маппинг нерегулярно, реже чем RGB-шум. Надо оформить отдельным багом. Но он похож на ситуацию с RGB-noise, тоже после гибернации/сна.
Comment 19 Sergey V Turchin 2024-01-24 15:10:22 MSK
(Ответ для dfpl на комментарий #16)
> # apt-get remove kernel-image-std-def
> Следующие пакеты будут УДАЛЕНЫ:
>   kernel-image-std-def#2:5.10.208-alt1:p10+338248.100.1.1@1705355502*
> 0 будет обновлено, 0 новых установлено, 1 пакетов будет удалено и 0 не будет
> обновлено.
Вы неправильно его устанавливали.
Нужно загрузиться в un-def, потом
update-kernel -t std-def
Comment 20 dfpl 2024-01-24 15:56:25 MSK
(Ответ для Sergey V Turchin на комментарий #19)
> Нужно загрузиться в un-def, потом
> update-kernel -t std-def
Да, теперь можно работать в режиме 1920x1080. Спасибо. Правда, RGB-noise всё-равно при выходе из режима сна в плеерах наблюдается. Понаблюдаю в фоновом режиме за этим моментом [восстановления экрана] дальше.
Comment 21 Sergey V Turchin 2024-06-20 15:57:36 MSK
Есть какой-то параметр модуля ядра nvidia для этого про работу с памятью при засыпании. Почитайте доки.