Rescanning is broken with runtime PM for PCIe ports

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

While testing the pci/pm tree from Bjorn with HEAD being 0195d2813547
("PCI: Add runtime PM support for PCIe ports"), I have noticed that
detaching and rescanning is broken.

When a bridgr is in D3 state, it cannot discover children. Reproducer:

    echo > /sys/bus/pci/devices/0000:01:00.0/remove 1
    # wait for the PCIe port to enter D3cold
    echo > /sys/bus/pci/devices/0000:00:01.0/rescan 1
    # Workaround to get the device back
    echo > /sys/bus/pci/devices/0000:00:01.0/power/control on
    echo > /sys/bus/pci/devices/0000:00:01.0/rescan 1

lspci:

    00:01.0 PCI bridge [0604]: Intel Corporation Skylake PCIe Controller (x16) [8086:1901] (rev 07)
    01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM204M [GeForce GTX 965M] [10de:13d9] (rev a1)

Probably needs a pm_runtime_{get,put}_sync in pci_rescan_bus and
pci_rescan_bus_bridge_resize.
-- 
Kind regards,
Peter Wu
https://lekensteyn.nl
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux