On Fri, Nov 15, 2019 at 12:34:50AM +1100, Oliver O'Halloran wrote: > On Thu, Nov 14, 2019 at 1:31 AM Bjorn Helgaas <helgaas@xxxxxxxxxx> wrote: > > > > This is fine, but it feels like sort of a blunt instrument. Is there > > any practical way to clear pci_host_bridge.native_pcie_hotplug (and > > native_aer if appropriate) for the PHBs in question? That would also > > prevent pciehp from binding. > > It is a large hammer, but I don't see a better way to handle it for > the moment. I had another look and my initial assessment was wrong in > that it's the portbus driver which claims the MSI rather than pciehp > itself. The MSI in the PCIe capability is shared between hotplug > events, PMEs, and BW notifications so to make the portbus concept work > the portbus driver needs to own the interrupt. Basicly, pnv_php and > portbus are fundamentally at odds with each other and can't be used > concurrently. Yeah, that makes sense. Is there a Kconfig symbol for pnv_php? If so, you could make CONFIG_PCIEPORTBUS unselectable in the first place. But I'm guessing there isn't such a symbol because you probably want to be able to build generic kernels that run on machines that *can* use portdrv as well as on PowerNV. So I'm find with the patch as posted. Bjorn