Radeon гибридная графика и вентилятор кулера

Здравствуйте, уважаемые арчеводы!

Имеется ноутбук - Lenovo G500 - с гибридной графикой intel/amd. Проблема в том, что мне никак не удается нормально сконфигурировать дискретную видеокарту и никак не получается заставить работать единственный вентилятор охлаждающей системы, который охлаждает радиатор прилегающий одновременно к процессору и к видеокарте.

Итак, имеею:
lspci -k
00:02.0 VGA compatible controller: Intel Corporation 3rd Gen Core processor Graphics Controller (rev 09)
	Subsystem: Lenovo 3rd Gen Core processor Graphics Controller
	Kernel driver in use: i915
	Kernel modules: i915

01:00.0 Display controller: Advanced Micro Devices, Inc. [AMD/ATI] Mars [Radeon HD 8670A/8670M/8750M]
	Subsystem: Lenovo Mars [Radeon HD 8670A/8670M/8750M]
	Kernel driver in use: radeon
	Kernel modules: radeon, amdgpu
Путём установки пакета с открытым драйвером xf86-video-ati, настройкой mkinitcpio.conf и созданием файла конфигурации /etc/X11/xorg.conf.d/20-radeon.conf удалось добиться отображения radeon-видеокарты в xrandr. Теперь оно выглядит следующим образом:
xrandr --listproviders
Provider 0: id: 0x6a cap: 0xb, Source Output, Sink Output, Sink Offload crtcs: 4 outputs: 5 associated providers: 1 name:Intel
Provider 1: id: 0x41 cap: 0xf, Source Output, Sink Output, Source Offload, Sink Offload crtcs: 2 outputs: 0 associated providers: 1 name:OLAND @ pci:0000:01:00.0

И на этом этапе начинаются серьёзные проблемы. Во-первых, glxgears с DRI_PRIME=1 крашится:
DRI_PRIME=1 glxgears

Running synchronized to the vertical refresh.  The framerate should be
approximately the same as the monitor refresh rate.
Segmentation fault (core dumped)

dmesg по этому поводу говорит следующее:

[ 3874.932508] [drm] ib test on ring 5 succeeded
[ 3875.022986] glxgears[1893]: segfault at 1a ip 00007f16700963cd sp 00007ffc80e84960 error 4 in radeonsi_dri.so[7f166fadf000+82a000]
[ 3875.022998] Code: c6 44 24 07 00 49 8b 9d c0 01 00 00 48 85 db 0f 84 ec 00 00 00 80 bb 91 00 00 00 00 0f 85 0b 01 00 00 48 8b 4b 58 0f b7 14 24 <0f> b7 41 1a 66 39 51 18 48 89 4c 24 48 66 0f 46 51 18 66 39 44 24
[ 3875.023086] audit: type=1701 audit(1539699116.496:44): auid=1000 uid=1000 gid=985 ses=2 pid=1893 comm="glxgears" exe="/usr/bin/glxgears" sig=11 res=1
[ 3875.036731] audit: type=1130 audit(1539699116.510:45): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@0-1902-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'
[ 3875.467076] audit: type=1131 audit(1539699116.940:46): pid=1 uid=0 auid=4294967295 ses=4294967295 msg='unit=systemd-coredump@0-1902-0 comm="systemd" exe="/usr/lib/systemd/systemd" hostname=? addr=? terminal=? res=success'

Однако, glxinfo показывает, что переключение идёт:
glxinfo | grep "OpenGL renderer"
OpenGL renderer string: Mesa DRI Intel(R) Ivybridge Mobile

DRI_PRIME=1 glxinfo | grep "OpenGL renderer"
OpenGL renderer string: AMD OLAND (DRM 2.50.0, 4.18.12-arch1-1-ARCH, LLVM 7.0.0)

Во-вторых, единственный вентиллятор охлаждающей системы так и не заработал(даже в случае с glxheads, который показывает черный квадрат, что позволяет не закрывая окна получить вывод температуры с видеокарты используя sensors). Более того, файла для управления вентилятором в системе вообще нет. Я искал их в sys/class/drm/card? . Ни в одной директории нет ничего похожего на "pwm". В выводе sensors тоже нет ничего намекающего на вентилятор:

sensors
coretemp-isa-0000
Adapter: ISA adapter
Package id 0:  +59.0°C  (high = +87.0°C, crit = +105.0°C)
Core 0:        +55.0°C  (high = +87.0°C, crit = +105.0°C)
Core 1:        +56.0°C  (high = +87.0°C, crit = +105.0°C)

acpitz-virtual-0
Adapter: Virtual device
temp1:        +55.0°C  (crit = +127.0°C)

radeon-pci-0100
Adapter: PCI adapter
temp1:            N/A  (crit = +120.0°C, hyst = +90.0°C)

В вики советуют увеличить fan divisor, однако при попытке запуска sensors -s с изменённым конфигом оно выдаёт
sudo sensors -s
Error: File /etc/sensors.d/fan-speed-control.conf, line 2: Unknown feature name
coretemp-isa-0000: No such subfeature known
В случае с radeon-pci-0100, выдаётся то же самое.

Так вот, может кто-нибудь сталкивался с этой проблемой и знает как её решить? Пишу сюда, так как в поисковых выдачах гугла перепробовано уже всё.
Можно попробовать настроить nbfc для управления вентиляторами.
тоже не помогло - я перепробывал все рекомендуемые конфиги и не нашёл на гитхабе разработчика конфига к g500.
Вообще-то, кулер ноутбука не управляемый програмно - вполне обычное явление. Хотя, можете почитать этот пост, возможно повезет. Если нет - не судьба.

За запуск иксов не скажу. У мну есть ноут с дискретной (radeon), но не гибридной графикой. Ждите спецов...
Aivar
кулер ноутбука не управляемый програмно - вполне обычное явление
Обычно, он управляется собственным шим-ом.
In Tux We Trust
vaserg
никак не получается заставить работать единственный вентилятор охлаждающей системы
Не понятно - что значит «не получается заставить работать»? Он работает или не работает? Скорее всего не получается управлять вентилятором?
Написали же - управление вентилятором осуществляется на аппаратном уровне, ACPI thermal, без участия юзера.
Если хочешь управлять сам, ставь необходимые утилиты, которые позволяют это делать. Либо управляй на уровне железа, без всяких утилит, используя специальные регистры (описано в этом блоге) - подбери нужные значения и напиши скрипт.
Ошибки не исчезают с опытом - они просто умнеют
vasek
vaserg
никак не получается заставить работать единственный вентилятор охлаждающей системы
Не понятно - что значит «не получается заставить работать»? Он работает или не работает? Скорее всего не получается управлять вентилятором?

Он выключен и не работает совсем. Hе включается даже тогда, когда температура из вывода sensors становится равной ~90 градусов и на клавиатуре ноутбука уже можно жарить яичницу. Спасибо за ссылку на блог, сейчас начну разбираться.
vaserg
Hе включается даже тогда, когда температура из вывода sensors становится равной ~90 градусов
Может он вообще не рабочий? Прозвони, замени ... посмотри значения в файлах, приведенных в этом описании, заодно поймешь как это все работает.
Ошибки не исчезают с опытом - они просто умнеют
vasek
Может он вообще не рабочий?
Он рабочий - в Windows всё работает и в Убунту одной из старых версий тоже всё работало.

Возможно оффтоп, но у меня возник вопрос по той статье, которую Вы мне посоветовали выше:
В /sys/kernel/debug/ec/ec0/io я нашёл группу из двух подряд-идущих байт, значения которых равны FF. Однако, при попытке записи в файл возникает ошибка;

dd: error writing '/sys/kernel/debug/ec/ec0/io': Invalid argument

Я считаю, что она связана с тем, что модуль загружен без параметра write_support=1. К сожалению, после
modprobe -r ec_sys
Появляется ошибка:
modprobe: FATAL: Module ec_sys is builtin.

И я, если честно, являясь новичком в arch, нахожусь немного в замешательстве. Неужели придётся пересобирать ядро без этого модуля, чтобы потом корректно его подгружать с нужными параметрами?
vaserg
И я, если честно, являясь новичком в arch, нахожусь немного в замешательстве.
попробуй скрипт acer_ec.pl, который ничего не требует (3-ий способ)
Ошибки не исчезают с опытом - они просто умнеют
 
Зарегистрироваться или войдите чтобы оставить сообщение.