我在 MSI MS-16J5 笔记本电脑上运行 Xubuntu 16.10。使用 NVIDIA 驱动程序时一切正常,但当我尝试切换到集成的 Intel 显卡时,系统变得非常不稳定。
当我进入nvidia-settings
,将其设置为使用英特尔 GPU(省电模式),然后注销时,起初一切似乎都正常,但系统会在几分钟内锁定。在电池电源和交流电源之间切换会立即挂起;尝试暂停、关机或重新启动也会立即挂起;即使只是尝试正常使用计算机也会在几分钟后使其锁定。
而在英特尔模式下,lspci
也不起作用,进程只是挂起(虽然它不会立即带走整个系统),甚至不会kill -9
摆脱它。
但是,切换到英特尔本身似乎工作正常(注销确实会切换 GPU)。在英特尔模式下,它也能正常启动。尝试切换回 NVIDIA GPU 时,注销时会挂起在黑屏上,但是重新启动后,它将切换回使用 NVIDIA GPU,然后一切正常。
该nouveau
驱动程序也非常不稳定。我不得不使用nomodeset
来运行安装程序。尝试使用该nouveau
驱动程序往往会出现类似 的消息nouveau: 0000:01:00.0: pci: failed to adjust lnkctl speed
。
acpi=off
似乎可以“解决”问题,但是没有电源管理,而且由于它是笔记本电脑,所以这是一个大问题。此外,这会禁用触控板。
acpi=noirq
禁用触控板和内置键盘,但问题仍然存在。
pci=nomsi
什么都没改变。
使用 NVIDIA GPU,一切都很好,但是这会使电池寿命缩短一半,而且我不需要它的电源(游戏是在 Windows 上进行的)。
在 Windows 10 中,一切正常,它也可以毫无问题地在 GPU 之间切换,所以我很确定这不是硬件问题。
我希望能够在 Linux 中使用英特尔 GPU 来节省电池电量。
输出lspci
:
00:00.0 Host bridge: Intel Corporation Skylake Host Bridge/DRAM Registers (rev 07)
00:01.0 PCI bridge: Intel Corporation Skylake PCIe Controller (x16) (rev 07)
00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06)
00:14.0 USB controller: Intel Corporation Sunrise Point-H USB 3.0 xHCI Controller (rev 31)
00:14.2 Signal processing controller: Intel Corporation Sunrise Point-H Thermal subsystem (rev 31)
00:16.0 Communication controller: Intel Corporation Sunrise Point-H CSME HECI #1 (rev 31)
00:17.0 SATA controller: Intel Corporation Sunrise Point-H SATA Controller [AHCI mode] (rev 31)
00:1c.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #1 (rev f1)
00:1c.3 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root Port #4 (rev f1)
00:1f.0 ISA bridge: Intel Corporation Sunrise Point-H LPC Controller (rev 31)
00:1f.2 Memory controller: Intel Corporation Sunrise Point-H PMC (rev 31)
00:1f.3 Audio device: Intel Corporation Sunrise Point-H HD Audio (rev 31)
00:1f.4 SMBus: Intel Corporation Sunrise Point-H SMBus (rev 31)
01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2)
02:00.0 Network controller: Intel Corporation Wireless 3165 (rev 81)
03:00.0 Ethernet controller: Qualcomm Atheros Killer E2400 Gigabit Ethernet Controller (rev 10)
输出uname -rv
:
4.8.0-38-generic #41-Ubuntu SMP Wed Feb 8 14:27:17 UTC 2017
输出lshw -c video
:
*-display
description: 3D controller
product: GM107M [GeForce GTX 960M]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a2
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:132 memory:de000000-deffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:e000(size=128) memory:df000000-df07ffff
*-display
description: VGA compatible controller
product: HD Graphics 530
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 06
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:127 memory:dd000000-ddffffff memory:b0000000-bfffffff ioport:f000(size=64) memory:c0000-dffff
dmesg
每隔几秒就会报告以下错误:
[ 2388.248063] pcieport 0000:00:1c.0: AER: Corrected error received: id=00e0
[ 2388.248073] pcieport 0000:00:1c.0: PCIe Bus Error: severity=Corrected, type=Physical Layer, id=00e0(Receiver ID)
[ 2388.248080] pcieport 0000:00:1c.0: device [8086:a110] error status/mask=00000001/00002000
[ 2388.248085] pcieport 0000:00:1c.0: [ 0] Receiver Error