Re: kmem_cache_alloc fail with unable to handle paging request after pci hotplug remove.

From: Lukas Wunner
Date: Tue Jul 05 2016 - 03:49:29 EST


On Tue, Jul 05, 2016 at 11:00:21AM +0800, AceLan Kao wrote:
> These are logs from my machine.
>
> *** Before plug-in the USB key
>
> u@u-XPS-13-9xxx:~$ sudo lspci -vvvv -s 00:1c.0
> 00:1c.0 PCI bridge: Intel Corporation Device 9d10 (rev f1) (prog-if 00
> [Normal decode])
[...]
> LnkSta: Speed 2.5GT/s, Width x0, TrErr- Train- SlotClk+ DLActive- BWMgmt- ABWMgmt-
> SltCap: AttnBtn- PwrCtrl- MRL- AttnInd- PwrInd- HotPlug+ Surprise+

The link is down (DLActive-), but the root port is a hotplug port,
so apparently with Alpine Ridge the controller is powered down if
nothing is plugged in and this results in the controller being
"unplugged" from the root port.

This looks less fishy than I originally thought, it's just very
different from the power management of pre Alpine Ridge controllers
on Macs (which is the only thing I'm really familiar with), where
the root port is not a hotplug port and the controller does not
disappear from the system when powered down. (It's config space
just becomes inaccessible.)

Best regards,

Lukas