On Tue, Jun 09, 2020 at 05:30:13PM -0700, Rajat Jain wrote: > On Tue, Jun 9, 2020 at 5:04 PM Bjorn Helgaas <helgaas@xxxxxxxxxx> wrote: > > On Tue, Jun 09, 2020 at 04:23:54PM -0700, Rajat Jain wrote: > > > Thanks for sending out the summary, I was about to send it out but got lazy. > > > ... > > > The one thing that still needs more thought is how about the > > > "pcieport" driver that enumerates the PCI bridges. I'm unsure if it > > > needs to be whitelisted for further enumeration downstream. What do > > > you think? > > > > The pcieport driver is required for AER, PCIe native hotplug, PME, > > etc., and it cannot be a module, so the whitelist wouldn't apply to > > it. > > Not that I see the need, but slight clarification needed just to make > sure I understand it clearly: > > Since pcieport driver is statically compiled in, AER, pciehp, PME, DPC > etc will always be enabled for devices plugged in during boot. But I > can still choose to choose to allow or deny for devices added *after > boot* using the whitelist, right? Yes, I think so. However, if pcieport doesn't claim hot-added devices like a dock, I don't think hotplug of PCI things downstream from the dock will work, e.g., if there are Thunderbolt switches in a monitor or something. > Also, denying pcieport driver for hot-added PCIe bridges only disables > these pcieport services on those bridges, but device enumeration > further downstream those bridges is not an issue? Right. Devices without pcieport would not be able to report hotplug events, so we wouldn't notice hot-adds or -removes involving those devices.