Здравствуйте, уважаемые линуксоиды!
Имеется ноутбук - 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, выдаётся то же самое.
Так вот, может кто-нибудь сталкивался с этой проблемой и знает как её решить? Пишу сюда, так как в поисковых выдачах гугла перепробовано уже всё, а у людей из соседних тем всё работает из коробки без танцев с бубном, странно.