The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]



"Можно ли запихнуть вулкан в неймспейс?"
Вариант для распечатки  
Пред. тема | След. тема 
Форум Открытые системы на рабочей станции (Драйверы, оборудование / Linux)
Изначальное сообщение [ Отслеживать ]

"Можно ли запихнуть вулкан в неймспейс?"  +2 +/
Сообщение от Аноним (0), 09-Янв-20, 10:06 
Подскажите, из-за чего CLONE_NEWUSER обламывает вулкан? Мой гугл мне ничего не подсказал.

Вот такую ошибку выдаёт vulkaninfo, например: /var/tmp/portage/dev-util/vulkan-tools-1.1.124/work/Vulkan-Tools-119e7c3bbae122f6cc5d778d068fb91e0e85d6a9/vulkaninfo/vulkaninfo.h:797: failed with ERROR_INITIALIZATION_FAILED

Для примера glxinfo (и вообще что угодно) работает без вопросов, а вулкан не хочет. И vkcube так вообще грохнул иксы.


Ответить | Правка | Cообщить модератору

Оглавление

Сообщения [Сортировка по ответам | RSS]

1. Сообщение от Аноним (1), 09-Янв-20, 16:50   +/
У тебя в FUTURES песочница с namespaces?

А тесты OpenCL в той же изоляции работают?

Ответить | Правка | Наверх | Cообщить модератору
Ответы: #2

2. Сообщение от Аноним (0), 09-Янв-20, 19:18   +1 +/
> У тебя в FUTURES песочница с namespaces?
> А тесты OpenCL в той же изоляции работают?

Только с вулканом проблемы. Проверить можно легко, эта команда фейлится:

unshare -r vulkaninfo

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #1 Ответы: #4, #8

3. Сообщение от Аноним (0), 10-Янв-20, 00:35   +/
Во, ещё когда навожу курсор на элементы управления окном (свернуть/закрыть) vkcube лагает. Косяк в оконном менеджере или так и должно быть? К слову, glxgears тоже подлагивает при этом, но менее заметно. Отключение антитиринга не помогло.
Ответить | Правка | Наверх | Cообщить модератору

4. Сообщение от Аноним (4), 10-Янв-20, 00:49   +1 +/
> unshare -r vulkaninfo

УМВР. NixOS 19.09, Linux 5.4.5, RADV POLARIS11 (RX 560). Вывод vulkaninfo с и без unshare различается только полями budget.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #5

5. Сообщение от Аноним (0), 10-Янв-20, 00:55   +/
>> unshare -r vulkaninfo
> УМВР. NixOS 19.09, Linux 5.4.5, RADV POLARIS11 (RX 560). Вывод vulkaninfo с
> и без unshare различается только полями budget.

Иксы? Нет ли возможности проверить на NVIDIA? Я пробовал 430/435/440 драйвер, проблема одна. Попутно переехал на libglvnd (мало ли), но nouveau вулкан всё равно не умеет. И cuda в неймспейсе тоже работает кстати, так что проблема будто бы только у вулкана.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #4 Ответы: #6

6. Сообщение от Аноним (4), 10-Янв-20, 10:34   +1 +/
> Иксы?

Да.
> Нет ли возможности проверить на NVIDIA?

Не имею из-за нежелания пихать в ядро огромный проприетарный блоб. Рекомендую тоже отказаться, проблем будет меньше.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #5 Ответы: #7

7. Сообщение от Аноним (0), 10-Янв-20, 10:42   +/
> Не имею из-за нежелания пихать в ядро огромный проприетарный блоб. Рекомендую тоже
> отказаться, проблем будет меньше.

Хех, будто драйвера амд это не огромный проприетарный блоб. :>

И нет, отказаться не варик, мне нужен вулкан. Может быть тут есть пользователи нвидиевских карт?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #6 Ответы: #10, #20

8. Сообщение от Аноним (8), 10-Янв-20, 13:49   +/
> Только с вулканом проблемы. Проверить можно легко, эта команда фейлится:
> unshare -r vulkaninfo

Работает на Kubuntu 19.10, Nvidia driver 440.44.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #2 Ответы: #9

9. Сообщение от Аноним (0), 10-Янв-20, 14:16   +/
>> Только с вулканом проблемы. Проверить можно легко, эта команда фейлится:
>> unshare -r vulkaninfo
> Работает на Kubuntu 19.10, Nvidia driver 440.44.

Можно подумать разное, но от рута я тоже не могу этого сделать. Занятно…

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #8 Ответы: #19

10. Сообщение от Аноним (4), 10-Янв-20, 21:24   +/
> Хех, будто драйвера амд это не огромный проприетарный блоб. :>

Ядерная часть драйвера AMD давно волша в апстрим ядра. Он вообще не использует проприетарных модулей, закрытой остаётся только прошивка GPU.

> И нет, отказаться не варик, мне нужен вулкан.

Для карт AMD есть три открытые реализации вулкана, одна из которых (RADV) входит в мезу и работает из коробки во всех десктопных дистрибутивах.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7

11. Сообщение от Аноним (0), 12-Янв-20, 08:01   +/
Выяснил, что без иксов работает. Попутно выяснил, что без CLONE_NEWUSER,
DISPLAY=:0 glxinfo
из tty выполняется, и
DISPLAY=:0 vulkaninfo
выдаёт точно такую же ошибку. Это может быть связано?
Ответить | Правка | Наверх | Cообщить модератору
Ответы: #12, #13, #14

12. Сообщение от Аноним (0), 12-Янв-20, 08:18   +/
vkcube сегфолтится в vkGetDeviceProcAddr (libvulkan.so)
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

13. Сообщение от Аноним (0), 12-Янв-20, 09:17   +/
В tty фейлится на vkCreateDevice, в неймспейсе на vkGetPhysicalDeviceSurfacePresentModesKHR.

GLX в обоих случаях работает. Профиль ICD корректный.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11

14. Сообщение от Аноним (0), 13-Янв-20, 00:18   +/
Вулкан не может получить доступ к устройству, например в логе вот это:

DEBUG: Instance Extension: VK_EXT_direct_mode_display (libGLX_nvidia.so.0) version 0.0.1
DEBUG: Instance Extension: VK_EXT_display_surface_counter (libGLX_nvidia.so.0) version 0.0.1
/tmp/portage/dev-util/vulkan-tools-9999/work/vulkan-tools-9999/vulkaninfo/vulkaninfo.h:920: failed with ERROR_INITIALIZATION_FAILED

Как должно быть:

DEBUG: Instance Extension: VK_EXT_direct_mode_display (libGLX_nvidia.so.0) version 0.0.1
DEBUG: Instance Extension: VK_EXT_display_surface_counter (libGLX_nvidia.so.0) version 0.0.1
DEBUG: Device Extension: VK_KHR_8bit_storage (libGLX_nvidia.so.0) version 0.0.1

Права сравнивал, не похоже что дело в этом. Дополнительные неймспейсы расшаривал, лишних прав на бинарник навешивал. Проблема именно в CLONE_NEWUSER, поскольку другие неймспейсы насколько я могу судить, замечательно работают. И можно повесить суидный бит на unshare, чтобы создать отдельный сетевой неймспейс (setcap не работает, не хватает прав для записи в /proc/self/setgroups). Но не в моём коде, никак не могу понять в чём дело и почему unshare может успешно создать сетевой неймспейс, а я нет. Есть подозрение, что поведение под отладчиком значительно отличается. Но это всё не имеет отношения к вулкану и моим проблемам с ним. С CLONE_NEWUSER он и под unshare от рута не работает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #11 Ответы: #15, #18

15. Сообщение от Аноним (0), 13-Янв-20, 00:24   +/
Хорошо, свой код я исправил, не проблема. Проблема в том что vulkan не может получить доступа к устройству. Когда он не может получить доступа к иксам, ошибка другая. Чтобы использовать вулкан вообще без иксов (что должно мне помочь), можно использовать icd профиль с egl вместо glx, но я пока получаю только сегфолты.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14 Ответы: #16

16. Сообщение от Аноним (0), 13-Янв-20, 00:41   +/
И мне не нравится бинарник с лишними правами (хотя бы не суидный, как того требует unshare, но это не важно), я просто хочу CLONE_NEWUSER использовать.
Ответить | Правка | Наверх | Cообщить модератору
Родитель: #15 Ответы: #17

17. Сообщение от Аноним (0), 13-Янв-20, 00:57   +/
> И мне не нравится бинарник с лишними правами (хотя бы не суидный,
> как того требует unshare, но это не важно), я просто хочу
> CLONE_NEWUSER использовать.

Ладно, пока придётся пользоваться тем, что есть, и бинарником с дополнительными capabilities. Я бы предпочёл CLONE_NEWUSER, но в нём вулкан не работает.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #16 Ответы: #21

18. Сообщение от Аноним (4), 13-Янв-20, 05:19   +/
> libGLX_nvidia.so.0

В техподдержку нвидии, пожалуйста. Это форум об открытом ПО, а не о кривых мокрописечных блобах.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #14

19. Сообщение от Аноним (8), 16-Янв-20, 15:21   +/
>>> Только с вулканом проблемы. Проверить можно легко, эта команда фейлится:
>>> unshare -r vulkaninfo
>> Работает на Kubuntu 19.10, Nvidia driver 440.44.
> Можно подумать разное, но от рута я тоже не могу этого сделать.
> Занятно…

А X.org у вас тоже от рута работает?

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #9

20. Сообщение от Аноним (20), 21-Фев-20, 02:11   +/
> Хех, будто драйвера амд это не огромный проприетарный блоб. :>

Таки нет. MESA + ядро Linux вполне себе опенсорсная реализация вулкана.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #7

21. Сообщение от Аноним (20), 21-Фев-20, 02:12   +/
> Я бы предпочёл CLONE_NEWUSER, но в нём вулкан не работает.

Ну так посмотри strace на чем именно обламывается. Как один из вариантов - на доступе к DRM-девайсу, opencl так тоже умеет. На эти девайсы юзеру надо права дать, иначе они не смогут туда соваться.

Ответить | Правка | Наверх | Cообщить модератору
Родитель: #17


Архив | Удалить

Рекомендовать для помещения в FAQ | Индекс форумов | Темы | Пред. тема | След. тема




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру