On Mon, 2013-08-19 at 16:59 -0600, Alex Williamson wrote: > On Tue, 2013-08-20 at 08:42 +1000, Benjamin Herrenschmidt wrote: > > On Mon, 2013-08-19 at 14:02 -0600, Bjorn Helgaas wrote: > > > I guess. And supply the pci_slot rather than the pci_dev? I'm a > > > little bit worried because the idea of a "slot" is not well-defined in > > > the spec, and we have sort of an ad hoc method of discovering and > > > managing them, e.g., acpiphp and pciehp might discover the same slot. > > > But I guess that's no reason to bury generic code in vfio. > > > > And I don't have pci_slot's at all yet on powerpc "powernv" (the host > > platform for KVM) since at this stage we don't support physical hotplug > > on the target machines... > > > > Alex, why specifically looking for "slots" here ? I don't quite > > understand. It makes sense to be able to reset individual devices > > whether they are on the otherboard, behind extension chassis or directly > > on slots... > > a) resetting a slot may have a smaller footprint than resetting a bus, *May* ... at least on PCIe there is no difference. I suppose PCI pre-E slots might have individual reset controls.... though the way to get them is fairly platform specific. > b) hotplug controllers sometimes need to be involved in a bus reset. > For b) I have a specific example where my Lenovo S20 workstation has an > onboard tg3 NIC attached to a root port supporting pciehp (go figure > since the tg3 is soldered onto the motherboard) and doing a secondary > bus reset at the root port triggers a presence detection change and > therefore tries to do a surprise removal. By doing a "slot" reset, I > have the hotplug controller code manage the bus reset by disabling > presence detection around the bus reset. If you don't have slots and > you don't need anything special around a secondary bus reset, you're > fine. It's just an opportunity to provide a hook for the hotplug > controller to participate. Thanks, Yuck, junk HW again ... oh well, I suppose that's never going to end... As long as the code works without the slots I'm fine :-) As I mentioned, we might have to do a whole different infrastructure for EEH anyway (which sucks but we have little choice in the matter). Cheers, Ben. > Alex > > > -- > To unsubscribe from this list: send the line "unsubscribe kvm" in > the body of a message to majordomo@xxxxxxxxxxxxxxx > More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html