On Wed, Jan 23, 2019 at 08:15:27PM +0100, Lukas Wunner wrote: > On Wed, Jan 23, 2019 at 12:07:38PM -0700, Keith Busch wrote: > > Right, so in Alex's case, it looks like we are observing > > pcie_wait_for_link() returning true before the PDC event. > > > > I'm wondering about PDS because if the link is up but Presence reports an > > empty slot, does that matter for any implementations? Or is it perfectly > > fine to enumerate an active link on an empty slot? An empty slot and > > active link doesn't make a lot of sense, but that observation appears to > > be what is reported here. > > We allow enumeration with an active link of an allegedly empty slot > because some hardware hardwires PDS to zero, see commit 80696f991424 > ("PCI: pciehp: Tolerate Presence Detect hardwired to zero"). > > The brokenness of PCIe hotplug implementations found in the wild is > astonishing. Heh, sounds like Alex's proposal may work until we find a slot implementation that doesn't do DLLSC as expected. :)