Почему мой компьютер зависает, когда дискретная графическая карта выключена?
Я испытал перегрев при установке Ubuntu 16.04 по умолчанию на моем ноутбуке MSI Destroyer с двойной графической картой (см. Соответствующую часть вывода sudo lspci -v
на дне). После некоторых поисков я пришел к выводу, что все, что отображается, проходит через мою специальную графическую карту вместо встроенной.
Согласно некоторым инструкциям, я использовал эту строку в /etc/default/grub (я запустил update-grub
впоследствии):
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash radeon.modeset=1 radeon.dpm=1 radeon.runpm=0"
Этим проблема была более или менее решена, но я попытался полностью отключить выделенную карту в соответствии с этой инструкцией.
Я запустил эту серию команд:
sudo su
echo IGD > /sys/kernel/debug/vgaswitcheroo/switch
echo OFF > /sys/kernel/debug/vgaswitcheroo/switch
(sudo su
потому что запуск команд с помощью sudo дал мне ошибку bash: /sys/kernel/debug/vgaswitcheroo/switch: Permission denied
)
Первое, что я заметил, было то, сколько времени потребовалось, чтобы отключить выделенную карту, чтобы я запустил dmesg
на всякий случай и обнаружились эти две странные ошибки:
[drm:atom_op_jump [radeon]] *ERROR* atombios stuck in loop for more than 5secs aborting
[drm:atom_execute_table_locked [radeon]] *ERROR* atombios stuck executing CD12 (len 62, WS 0, PS 0) @ 0xCD2E
повторять каждые 5 секунд. После выполнения команды на отключение карты произошли две вещи. Во-первых, ноутбук был намного холоднее (очевидно, отключение карты было гораздо более эффективным, чем конфигурация grub), а во-вторых, через несколько секунд Ubuntu просто замерзла без видимых причин.
Что возможно могло пойти не так? Это ошибка в драйвере графической карты? Должен ли я сообщить об этом где-нибудь?
На всякий случай я добавляю вывод sudo lspci -v
отношение к графическим картам:
01:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Neptune XT [Radeon HD 8970M] (prog-if 00 [VGA controller])
Subsystem: Micro-Star International Co., Ltd. [MSI] Radeon R9 M290X
Physical Slot: 0
Flags: bus master, fast devsel, latency 0, IRQ 37
Memory at d0000000 (64-bit, prefetchable) [size=256M]
Memory at fea00000 (64-bit, non-prefetchable) [size=256K]
I/O ports at e000 [size=256]
Expansion ROM at fea40000 [disabled] [size=128K]
Capabilities: [48] Vendor Specific Information: Len=08 <?>
Capabilities: [50] Power Management version 3
Capabilities: [58] Express Legacy Endpoint, MSI 00
Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Capabilities: [150] Advanced Error Reporting
Capabilities: [270] #19
Capabilities: [2b0] Address Translation Service (ATS)
Capabilities: [2c0] #13
Capabilities: [2d0] #1b
Kernel driver in use: radeon
Kernel modules: radeon
00:01.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Richland [Radeon HD 8650G] (prog-if 00 [VGA controller])
Subsystem: Micro-Star International Co., Ltd. [MSI] Richland [Radeon HD 8650G]
Flags: bus master, fast devsel, latency 0, IRQ 36
Memory at c0000000 (32-bit, prefetchable) [size=256M]
I/O ports at f000 [size=256]
Memory at feb00000 (32-bit, non-prefetchable) [size=256K]
Expansion ROM at <unassigned> [disabled]
Capabilities: [50] Power Management version 3
Capabilities: [58] Express Root Complex Integrated Endpoint, MSI 00
Capabilities: [a0] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 <?>
Kernel driver in use: radeon
Kernel modules: radeon