Re: Enable CONFIG_VGA_SWITCHEROO cause lspci on MSI GS60-070XCN stuck

From: Lukas Wunner
Date: Thu Feb 25 2016 - 06:17:48 EST


Hi,

On Wed, Feb 24, 2016 at 11:32:15PM +0800, Drunkard Zhang wrote:
> I may hit a bug, when enabled CONFIG_VGA_SWITCHEROO, run lspci command
> on MSI GS60-070XCN will stuck, it eats 100% CPU of one core, and
> CPU/memory allocation on this system fails sometimes.

Sounds like a deadlock. Does reverting 8f12a3118f55 ("vga_switcheroo:
Add missing locking") help?

If not I'd suspect this to be caused by a codepath in nouveau which is
only executed if CONFIG_VGA_SWITCHEROO is enabled. I believe Maxwell
support is still somewhat limited. Does unloading or blacklisting
nouveau help?

Best regards,

Lukas

>
> I'll bisect later, put my enviroment here, hope you guys give me some hint :)
>
> Tested kernel versions are: latest Linus' kernel code, 4.4.2-gentoo;
>
> My hardware info:
>
> 23:25:37 ~ # lspci
> 00:00.0 Host bridge: Intel Corporation Sky Lake Host Bridge/DRAM
> Registers (rev 07)
> 00:01.0 PCI bridge: Intel Corporation Sky Lake PCIe Controller (x16) (rev 07)
> 00:02.0 VGA compatible controller: Intel Corporation Device 191b (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.2 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root
> Port #3 (rev f1)
> 00:1c.3 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root
> Port #4 (rev f1)
> 00:1c.4 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root
> Port #5 (rev f1)
> 00:1d.0 PCI bridge: Intel Corporation Sunrise Point-H PCI Express Root
> Port #9 (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: Qualcomm Atheros QCA6174 802.11ac Wireless
> Network Adapter (rev 20)
> 03:00.0 Unassigned class [ff00]: Realtek Semiconductor Co., Ltd.
> RTS5249 PCI Express Card Reader (rev 01)
> 04:00.0 Ethernet controller: Qualcomm Atheros Device e0a1 (rev 10)
> 05:00.0 PCI bridge: Intel Corporation Device 1576
> 06:00.0 PCI bridge: Intel Corporation Device 1576
> 06:01.0 PCI bridge: Intel Corporation Device 1576
> 06:02.0 PCI bridge: Intel Corporation Device 1576
> 07:00.0 System peripheral: Intel Corporation Device 1575
> 09:00.0 USB controller: Intel Corporation Device 15b5
> 3e:00.0 Non-Volatile memory controller: Toshiba America Info Systems
> Device 010f (rev 01)
>
> Any other hints?