[PATCH 0/4] Support registering specific reset handler

cascardo at linux.vnet.ibm.com cascardo at linux.vnet.ibm.com
Tue Feb 17 00:14:27 AEDT 2015


On Fri, Feb 13, 2015 at 03:54:55PM +1100, Gavin Shan wrote:
> VFIO PCI infrastructure depends on pci_reset_function() to do reset on
> PCI devices so that they would be in clean state when host or guest grabs
> them. Unfortunately, the function doesn't work (or not well) on some PCI
> devices that require EEH PE reset.
> 
> The patchset extends the quirk for PCI device speicific reset methods to
> allow dynamically registration. With it, we can translate reset requests
> for those special PCI devcies to EEH PE reset, which is only avaialble on
> 64-bits PowerPC platforms.
> 

Hi, Gavin.

I like your approach overall. That allows us to confine these quirks to
the platforms where they are relevant. I would make the quirks more
specific, though, instead of doing them for all IBM and Mellanox
devices.

I wonder if we should not have some form of domain reset, where we would
reset all the devices on the same group, and use that on vfio. Grouping
the devices would then be made platform-dependent, as well as the reset
method. On powernv, we would group by IOMMU group and issue a
fundamental reset.

Cascardo.

> Gavin Shan (4):
>   PCI: Rename struct pci_dev_reset_methods
>   PCI: Introduce list for device reset methods
>   PCI: Allow registering reset method
>   powerpc/powernv: Register PCI dev specific reset handlers
> 
>  arch/powerpc/platforms/powernv/pci.c |  61 +++++++++++++++
>  drivers/pci/pci.h                    |   3 +-
>  drivers/pci/quirks.c                 | 139 ++++++++++++++++++++++++++++++-----
>  include/linux/pci.h                  |   9 +++
>  4 files changed, 192 insertions(+), 20 deletions(-)
> 
> -- 
> 1.8.3.2
> 



More information about the Linuxppc-dev mailing list