Исследование выбора 32-битного драйвера MESA - PullRequest
0 голосов
/ 07 мая 2018

Я использовал карту NVidia с установленными на Debian Stretch драйверами properary.

Но поскольку мой жесткий диск переносится между разными машинами (intel, amd, но всегда на amd64 act), я решил сбросить карту NVidia и откатить opengl в MESA, чтобы использовать ускорение 3D на каждом машина. После долгих попыток я был успешно идентифицирован и восстановил некоторые сильно перезаписанные файлы (libGL.so, libdrm2.so, от установщика NVidia).

Теперь я успешно восстановил 64-битные библиотеки, так что glxgears, поддержка браузера WebGL, gnuplot и т. Д. Работают хорошо.

Но 32-битные библиотеки (wine, steam) по-прежнему не работают хорошо, они всегда возвращаются к визуализации "Mesa X11".

Я использовал glxgears $ LIBGL_DEBUG=verbose glxinfo | grep "OpenGL renderer string" чтобы определить, какой именно и DRI выбран. Он печатает процесс поиска и рендер:

libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/tls/r600_dri.so
libGL: OpenDriver: trying /usr/lib/x86_64-linux-gnu/dri/r600_dri.so
libGL: Using DRI2 for screen 0
OpenGL renderer string: Gallium 0.4 on AMD SUMO (DRM 2.50.0 / 4.12.0-0.bpo.1-amd64, LLVM 3.9.1)

Чтобы исследовать 32-битные библиотеки (мы не можем установить из 64-битной и 32-битной версии mesa), я скачал 32-битную версию:

$ apt-get download mesa-utils:i386

Распаковал его и попытался выяснить, почему не удается выбрать правильный DRI:

LIBGL_DEBUG=verbose  ./glxinfo | grep "OpenGL renderer string"
OpenGL renderer string: Mesa X11

Явный 64-битный glxinfo выводит отладочную информацию на stderr, поэтому мы можем видеть, как происходит выбор.

В 32-битной версии я не могу получить полезную информацию, даже если я укажу LIBGL_DRIVERS_PATH=/usr/lib/i386-linux-gnu/dri/ переменная окружения, где mesa может найти правильный 32-битный, так что

$ file /usr/lib/i386-linux-gnu/dri/r600_dri.so
/usr/lib/i386-linux-gnu/dri/r600_dri.so: ELF 32-bit LSB shared object, Intel 80386, version 1 (GNU/Linux), dynamically linked, BuildID[sha1]=d5177f823f11ac8ea7412e517aa6684154de506e, stripped

Как я могу получить больше информации о выборе MESA DRI?

...