Bug 44033 - Падает сессия при воспроизведении видео в браузере и VLC на виртуальных машинах QEMU
Summary: Падает сессия при воспроизведении видео в браузере и VLC на виртуальных машин...
Status: NEW
Alias: None
Product: Sisyphus
Classification: Development
Component: vlc (show other bugs)
Version: unstable
Hardware: x86_64 Linux
: P5 normal
Assignee: Anton Farygin
QA Contact: qa-sisyphus
URL:
Keywords:
: 42635 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-10-14 14:42 MSK by Anton Zhukharev
Modified: 2023-07-24 11:21 MSK (History)
10 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Anton Zhukharev 2022-10-14 14:42:05 MSK
Ошибка воспроизводится на всех системах, обновлённых до Sisyphus.
Актуально для виртуальных машин QEMU (на реальном железе не получилось воспроизвести).

Версии пакетов:
 * libva-driver-intel-2.4.1-alt2
 * libva-utils-2.15.0-alt1
 * libva-2.16.0-alt1
 * libva-intel-media-driver-22.5.4-alt1
 * vlc-3.0.16-alt3

Шаги воспроизведения:
 1. Открыть VLC, в главном меню выбрать "Инструменты" -> "Настройки"
 2. Перейти во вкладку "Ввод/кодеки"
 3. В "Декодирование с аппаратным ускорением" выбрать "Видеодекодер VA-API"
 4. Сохранить изменения и закрыть VLC
 5. Загрузить любое видео, например это: https://xvid.ru/play/tests/test_5_1.mkv
 6. Запустить VLC, открыть загруженное видео

Фактический результат:
 * графический сеанс крашится, загружается дисплейный менеджер

Ожидаемый результат:
 * видео проигрывается, графический сеанс не крашится

Дополнительные исследования:
 * не воспроизводится на системах с p10
Comment 1 Anton Farygin 2022-10-17 20:09:22 MSK
а какое на qemu аппаратное ускорение ?
Comment 2 Anton Farygin 2022-10-17 20:09:38 MSK
vainfo что говорит ?
Comment 3 Anton Zhukharev 2022-10-19 09:35:52 MSK
(Ответ для Anton Farygin на комментарий #1)
> а какое на qemu аппаратное ускорение ?
qlx (в p10 тоже)

(Ответ для Anton Farygin на комментарий #2)
> vainfo что говорит ?
Trying display: wayland
Trying display: x11
libva info: VA-API version 1.16.0
libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
vaInitialize failed with error code -1 (unknown libva error),exit

В p10:
libva info: VA-API version 1.12.0
libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
vaInitialize failed with error code -1 (unknown libva error),exit
Comment 4 Anton Farygin 2022-10-19 10:00:30 MSK
и в первом и во втором случае xorg ?
Comment 5 Anton Zhukharev 2022-10-19 10:01:04 MSK
(Ответ для Anton Farygin на комментарий #4)
> и в первом и во втором случае xorg ?
Да.
Comment 6 Anton Farygin 2022-10-19 10:06:32 MSK
С wayland такого не происходит ?
Comment 7 Anton Zhukharev 2022-10-19 10:09:20 MSK
(Ответ для Anton Farygin на комментарий #6)
> С wayland такого не происходит ?
Проверил: не происходит.
Comment 8 Anton Farygin 2022-11-08 11:29:34 MSK
Ошибка в драйвере qxl, иксы не должны падать от попытки принудительного воспроизведения через libva
Comment 9 Valery Inozemtsev 2022-11-08 12:24:24 MSK
у драйвера qlx нет поддержки VA-API. VLC не должен давать выбрать "Видеодекодер VA-API", или проверять перед воспроизведением поддерживается VA-API
Comment 10 Anton Farygin 2022-11-08 16:01:39 MSK
на самом деле нет - xorg привелигерованный процесс и падать в segmentation fault от пользовательского приложения он точно не должен.
Comment 11 Anton Farygin 2022-11-08 16:03:23 MSK
проблема не только у нас, кстати.
https://bugzilla.redhat.com/show_bug.cgi?id=2020633
Comment 12 Anton Zhukharev 2022-11-13 18:45:21 MSK
(Ответ для Anton Zhukharev на комментарий #0)
> Дополнительные исследования:
>  * не воспроизводится на системах с p10
Кстати, не воспроизводится при запуске VLC через ssh на удалённой машине:

  $ ssh -X <name>@<host> vlc

В это время значение переменной XDG_SESSION_TYPE равно tty (в других случаях или
x11 или wayland).
Comment 13 Anton Farygin 2022-11-13 19:57:16 MSK
(Ответ для Anton Zhukharev на комментарий #12)
> (Ответ для Anton Zhukharev на комментарий #0)
> > Дополнительные исследования:
> >  * не воспроизводится на системах с p10
> Кстати, не воспроизводится при запуске VLC через ssh на удалённой машине:
> 
>   $ ssh -X <name>@<host> vlc
> 
> В это время значение переменной XDG_SESSION_TYPE равно tty (в других случаях
> или
> x11 или wayland).

Ну конечно не воспроизведётя, X сервер же локальный используется.
Comment 14 Anton Zhukharev 2023-02-02 09:05:17 MSK
В Sisyphus в новым xorg-drv-qxl (0.1.6-alt1) ошибка также воспроизводится.
Comment 15 Anton Zhukharev 2023-06-16 22:17:32 MSK
*** Bug 46548 has been marked as a duplicate of this bug. ***
Comment 16 Alexander Makeenkov 2023-06-16 22:25:06 MSK
Воспроизводится не только с vlc, но и с браузерами (см. #46548)
Comment 17 Anton Zhukharev 2023-06-16 22:28:48 MSK
(In reply to Alexander Makeenkov from comment #16)
> Воспроизводится не только с vlc, но и с браузерами (см. #46548)
Вкратце вот сообщения ядра:

qxl 0000:00:02.0: object_init failed for (262144, 0x00000001)
[drm:qxl_gem_object_create [qxl]] *ERROR* Failed to allocate GEM object (260516, 1, 4096, -12)
[drm:qxl_alloc_ioctl [qxl]] *ERROR* qxl_alloc_ioctl: failed to create gem ret=-12
Comment 18 Alexander Makeenkov 2023-06-22 09:32:47 MSK
*** Bug 42635 has been marked as a duplicate of this bug. ***
Comment 19 Evgeny Shesteperov 2023-07-24 11:21:39 MSK
(Ответ для Anton Zhukharev на комментарий #17)
> (In reply to Alexander Makeenkov from comment #16)
> > Воспроизводится не только с vlc, но и с браузерами (см. #46548)
> Вкратце вот сообщения ядра:
> 
> qxl 0000:00:02.0: object_init failed for (262144, 0x00000001)
> [drm:qxl_gem_object_create [qxl]] *ERROR* Failed to allocate GEM object
> (260516, 1, 4096, -12)
> [drm:qxl_alloc_ioctl [qxl]] *ERROR* qxl_alloc_ioctl: failed to create gem
> ret=-12

Выглядит так, что это не связано с xorg-drv-qxl.

Если на PVE поставить Display как virtio, или как SPICE (qxl,memory=64) или как Default (memory=64), то ошибка с VLC будет воспроизводиться, а с браузерами нет.

Для эксперимента удалил xorg-drv-qxl, перезагрузился, повторно воспроизвёл ошибку, ошибка воспроизводится.