LINUX.ORG.RU

после обновления ядра GLX только от рута

 , ,


0

1

Ноут HP DV5 (Nvidia G96M [GeForce 9600M GT]) , debian testing.

Драйвер (legacy, 304.131) установлен согласно https://wiki.debian.org/ru/NvidiaGraphicsDrivers#A.2BBBIENQRABEEEOARP_304.131...

Все работало, включая vdpau.

После недавнего обновления ядра с 4.6 на 4.7 функции ускорения стали доступны только от рута, т.е.

maksim@cloud-9:~/Рабочий стол$ glxinfo | grep render
X Error of failed request:  BadValue (integer parameter out of range for operation)
  Major opcode of failed request:  154 (GLX)
  Minor opcode of failed request:  24 (X_GLXCreateNewContext)
  Value in failed request:  0x0
  Serial number of failed request:  87
  Current serial number in output stream:  88

точно такую же ошибку выдает glxgears.

Если же пускать от рута:

maksim@cloud-9:~/Рабочий стол$ sudo glxinfo | grep render
direct rendering: Yes
OpenGL renderer string: GeForce 9600M GT/PCIe/SSE2
    GL_NVX_conditional_render, GL_NVX_gpu_memory_info, 
ну и т.д.

Соответственно, в видеоплеере (любом) запущенном от пользователя vdpau не работает, от рута - работает.

Пользователь входит в группу video.

В /var/log/Xorg.*.log ошибок нет. lsmod показывает, что модуль ядра грузиться.

Похоже, что проблема в правах доступа к каким-то библиотекам, но гуглинг не помог.

Теоретически можно все драйвера снести и поставить заново, но «Шурик, это же не наш метод» (С)



Последнее исправление: McSeam (всего исправлений: 1)
Ответ на: комментарий от false

strace -o gl.txt glxgears

http://pastebin.com/6U7b2S9z

strace -o gl.txt sudo glxgears

Выдает ошибку: sudo: эффективный uid не равен 0, возможно, /usr/bin/sudo находится в файловой системе, смонтированной с битом «nosuid» или в файловой системе NFS без прав суперпользователя?

McSeam
() автор топика

А это помогает, нет ? /etc/X11/xorg.conf.d/10-dri.conf

Section "Device"
  Driver "radeon"
EndSection
Section "dri"
Mode 0666
EndSection
sova ★★
()
Ответ на: комментарий от sova

Нет, не помогает.

/etc/X11/xorg.conf.d/ у меня нет, есть /usr/share/X11/xorg.conf.d/. Если туда поместить файл 10-dri.conf с содержимым как выше (только заменив radeon на nvidia), то иксы не стартуют с ошибкой:

[    20.356] (==) Using system config directory "/usr/share/X11/xorg.conf.d"
[    20.356] Parse error on line 3 of section Device in file /usr/share/X11/xorg.conf.d/10-dri.conf
	This section must have an Identifier line.
[    20.356] (EE) Problem parsing the config file
[    20.356] (EE) Error parsing the config file
[    20.356] (EE) 
Fatal server error:
[    20.356] (EE) no screens found(EE) 
[    20.356] (EE) 
Please consult the The X.Org Foundation support 
	 at http://wiki.x.org
 for help. 
[    20.356] (EE) Please also check the log file at "/var/log/Xorg.0.log" for additional information.
[    20.356] (EE) 
[    20.356] (EE) Server terminated with error (1). Closing log file.

Если после первых двух строк добавить, как оно просит, identifier (я по аналогии с xorg.conf вписал Identifier «Device0»), то стартует, но GLX только у рута.

Если секцию Device полностью убрать, то Х-сервер стартует, но GLX по-прежнему только у рута.

Если добавить Section «dri» и т.д. в /etc/X11/xorg.conf (секция device там уже есть), то... в общем см. выше.

McSeam
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.