Проблемы bumblebee с >=nvidia-drivers-358

Для новичков как вообще в Linux, так и в конкретной теме, к которой относится вопрос.

Модератор: Bizdelnick

Ответить
Аватара пользователя
LMAoD
Сообщения: 182
ОС: Gentoo ~amd64

Проблемы bumblebee с >=nvidia-drivers-358

Сообщение LMAoD »

Добрый день, после обновления системы и установки Plasma5 с переходом на sddm столкнулся с проблемой: перестала отключаться дискретная видеокарта на ноутбуке. В процессе загрузки было обнаружено, что стал автоматически загружаться модуль nvidia(раньше такого не было). Попытка добавить его в blacklist к успеху не привела. Отключить видеокарту вручную # tee /proc/acpi/bbswitch <<< OFF удается только предварительно выгрузив модули nvidia_drm nvidia_modeset nvidia. Так же перестал работать primusrun ругаясь

user@host

$ primusrun glxspheres primus: fatal: failed to load any of the libraries: /usr/lib64/opengl/nvidia/lib/libGL.so.1:/usr/lib32/opengl/nvidia/lib/libGL.so.1:/usr/lib/opengl/nvidia/lib/libGL.so.1 /usr/lib64/opengl/nvidia/lib/libGL.so.1: wrong ELF class: ELFCLASS64 libGLX.so.0: cannot open shared object file: No such file or directory /usr/lib/opengl/nvidia/lib/libGL.so.1: wrong ELF class: ELFCLASS64 $ primusrun glxspheres64 primus: fatal: failed to load any of the libraries: /usr/lib64/opengl/nvidia/lib/libGL.so.1:/usr/lib32/opengl/nvidia/lib/libGL.so.1:/usr/lib/opengl/nvidia/lib/libGL.so.1 libGLX.so.0: cannot open shared object file: No such file or directory /usr/lib32/opengl/nvidia/lib/libGL.so.1: wrong ELF class: ELFCLASS32 libGLX.so.0: cannot open shared object file: No such file or directory


а после запуска приложения с помощью optirun видеокарта не отключается, для отключения вручную приходится все так же сначала выгружать модули. Попытки нагуглить к положительному результату не привели, поэтому прошу вашей помощи.

dmesg
Gentoo ~amd64
kernel 4.1.2-gentoo
x11-misc/bumblebee-3.2.1 (bbswitch VIDEO_CARDS="nvidia -nouveau")
sys-power/bbswitch-0.8
x11-drivers/nvidia-drivers-364.15 (X acpi driver gtk3 kms multilib tools uvm wayland -compat -pax_kernel -static-libs KERNEL="linux -FreeBSD")
x11-misc/primus-9999 (01:28:18 04.04.2016)(ABI_MIPS="-n32 -n64 -o32" ABI_PPC="-32 -64" ABI_S390="-32 -64" ABI_X86="32 64 -x32")

upd. Проблему с primusrun решил путем добавления строк /usr/lib64/opengl/nvidia/lib /usr/lib32/opengl/nvidia/lib в /etc/ld.so.conf и запуском # ldconfig, все верно?
Спасибо сказали:
Аватара пользователя
Bizdelnick
Модератор
Сообщения: 20752
Статус: nulla salus bello
ОС: Debian GNU/Linux

Re: Проблемы bumblebee с >=nvidia-drivers-358

Сообщение Bizdelnick »

LMAoD писал(а):
09.04.2016 11:25
все верно?

Вряд ли. Так у Вас будет всегда использоваться нвидиевская libGLX.so.0, даже при выгруженном модуле nvidia, что скорее всего повлечёт за собой ошибки. Возможно, проблему можно решить, добавив $ORIGIN в RPATH для /usr/lib*/opengl/nvidia/lib/libGL.so.1 (а может быть и для всех библиотек из /usr/lib*/opengl/nvidia/lib/). Но это всё чисто теоретически, ибо я шмелём не пользуюсь и ни разу не гентушник.

LMAoD писал(а):
09.04.2016 11:25
стал автоматически загружаться модуль nvidia(раньше такого не было)

Может быть дело в том, что появился nvidia_modeset? Что если добавить опцию ядра nvidia.modeset=0?
Пишите правильно:
в консоли
вку́пе (с чем-либо)
в общем
вообще
в течение (часа)
новичок
нюанс
по умолчанию
приемлемо
проблема
пробовать
трафик
Спасибо сказали:
Аватара пользователя
LMAoD
Сообщения: 182
ОС: Gentoo ~amd64

Re: Проблемы bumblebee с >=nvidia-drivers-358

Сообщение LMAoD »

Благодарю за ответ
Bizdelnick писал(а):
09.04.2016 13:17
Вряд ли. Так у Вас будет всегда использоваться нвидиевская libGLX.so.0, даже при выгруженном модуле nvidia, что скорее всего повлечёт за собой ошибки. Возможно, проблему можно решить, добавив $ORIGIN в RPATH для /usr/lib*/opengl/nvidia/lib/libGL.so.1 (а может быть и для всех библиотек из /usr/lib*/opengl/nvidia/lib/). Но это всё чисто теоретически, ибо я шмелём не пользуюсь и ни разу не гентушник.
Значит буду дальше искать, хотя раньше такой проблемы не было.

Bizdelnick писал(а):
09.04.2016 13:17
Может быть дело в том, что появился nvidia_modeset? Что если добавить опцию ядра nvidia.modeset=0?

Может быть, но это не помогло. в данный момент

root@host

# cat /etc/modprobe.d/blacklist.conf blacklist nvidia


А в grub'e linux /vmlinuz-4.1.2-gentoo root=/dev/sda6 ro panic=5 video=uvesafb:1366x768-32,mtrr:3,ywrap i915.semaphores=0 nvidia.modeset=0 и все равно загружается автоматически модуль nvidia при загрузке
Спасибо сказали:
Kopilov
Сообщения: 947
ОС: [K]Ubuntu, Debian

Re: Проблемы bumblebee с >=nvidia-drivers-358

Сообщение Kopilov »

А что значит panic=5?
Спасибо сказали:
Аватара пользователя
LMAoD
Сообщения: 182
ОС: Gentoo ~amd64

Re: Проблемы bumblebee с >=nvidia-drivers-358

Сообщение LMAoD »

Kopilov писал(а):
09.04.2016 14:15
А что значит panic=5?

автоматическая перезагрузка через 5 секунд если ядро запаникует
Спасибо сказали:
Аватара пользователя
LMAoD
Сообщения: 182
ОС: Gentoo ~amd64

Re: Проблемы bumblebee с >=nvidia-drivers-358

Сообщение LMAoD »

временно решил костыльным путем сделав alias steamrun="optirun -b primus steam && kdesu ~/nvidia_off.sh" в .bashrc

user@host

$ cat ~/nvidia_off.sh #!/bin/bash rmmod nvidia_drm nvidia_modeset nvidia tee /proc/acpi/bbswitch <<< OFF


правильно ли я понимаю, что к bash скриптам нельзя применить SUID и SGID? Не слишком радует каждый раз вводить пароль рута для отключения видеокарты, к тому же на ноутбуке нет ничего важного и ценного да и доступа к нему ни у кого нет. Для повышения безопасности насколько понимаю будет достаточно назначить рута владельцем и группой и выставить права 6555
Спасибо сказали:
Аватара пользователя
rl0ad
Сообщения: 123
ОС: Leap 42.1

Re: Проблемы bumblebee с >=nvidia-drivers-358

Сообщение rl0ad »

правильно ли я понимаю, что к bash скриптам нельзя применить SUID и SGID?

А собственно почему нельзя-то?
Спасибо сказали:
Аватара пользователя
LMAoD
Сообщения: 182
ОС: Gentoo ~amd64

Re: Проблемы bumblebee с >=nvidia-drivers-358

Сообщение LMAoD »

rl0ad писал(а):
11.04.2016 22:50
А собственно почему нельзя-то?

Читал где-то, что в целях безопасности они игнорируются, да и не получилось. Или может я не правильно понял их назначение:
1. делаем владельцем рута
2. ставим SUID бит и на исполнение всем
3. запуская от пользователя получаем выполнение с правами рута без ввода пароля?
Спасибо сказали:
Аватара пользователя
rl0ad
Сообщения: 123
ОС: Leap 42.1

Re: Проблемы bumblebee с >=nvidia-drivers-358

Сообщение rl0ad »

У меня получалось и ничего не игнорировалось. Только мне это кажется всего раз и нужно было.
Вроде все пункты правильные..
Спасибо сказали:
Ответить