I'm running Xubuntu 16.10 on an MSI MS-16J5 laptop. When using the NVIDIA driver, all is well, but when I try to switch to the integrated Intel graphics card, the system becomes very unstable.
When I go into nvidia-settings
, set it to use the Intel GPU (Power Saving Mode), and then log out, at first everything seems to work, however the system will lock up within a few minutes. Switching between battery power and AC power is an immediate hang; trying to suspend, shutdown or reboot is also an immediate hang; even just trying to use the computer normally will make it lock up after a few minutes.
While in Intel mode, lspci
also does not work, the process just hangs (though it does not immediately take the whole system with it), and not even kill -9
will get rid of it.
However, switching to Intel itself seems to work fine (logging out does make it switch GPUs). It will also boot up fine while in Intel mode. Trying to switch back to the NVIDIA GPU hangs on a black screen when logging out, however after a reboot it will have switched back to using the NVIDIA GPU, and then everything works fine.
The nouveau
driver is very unstable as well. I had to use nomodeset
to get the installer to run. Trying to use the nouveau
driver tends to give messages like nouveau: 0000:01:00.0: pci: failed to adjust lnkctl speed
.
acpi=off
seems to "fix" the problem, however then there is no power management, and since it is a laptop this is a deal-breaker. On top of that, this disables the trackpad.
acpi=noirq
disables both the trackpad and the internal keyboard, but the problem remains.
pci=nomsi
changes nothing.
With the NVIDIA GPU, everything is fine, however that cuts the battery life in half and I do not need its power anyway (the games are on Windows).
In Windows 10, everything works, it also switches between the GPUs without any problems, so I'm pretty sure it's not a hardware problem.
I'd like to be able to use the Intel GPU in Linux to conserve battery power.
Output of 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)
Output of uname -rv
:
4.8.0-38-generic #41-Ubuntu SMP Wed Feb 8 14:27:17 UTC 2017
Output of 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
has the following error reported every few seconds:
[ 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