[PATCH 0/5] PCI: Reduce AER / EEH deviations
Bjorn Helgaas
helgaas at kernel.org
Thu Aug 14 04:21:41 AEST 2025
On Wed, Aug 13, 2025 at 07:11:00AM +0200, Lukas Wunner wrote:
> The kernel supports three different PCI error recovery mechanisms:
>
> * AER per PCIe r7.0 sec 6.2 (drivers/pci/pcie/aer.c + err.c)
> * EEH on PowerPC (arch/powerpc/kernel/eeh_driver.c)
> * zPCI on s390 (arch/s390/pci/pci_event.c)
>
> In theory, they should all follow Documentation/PCI/pci-error-recovery.rst
> to afford uniform behavior to drivers across platforms.
>
> In practice, there are deviations which this series seeks to reduce.
>
> One particular pain point is AER not allowing drivers to opt in to a
> Bus Reset on Non-Fatal Errors (patch [1/5]). EEH allows this and the
> "xe" graphics driver would like to take advantage of it on AER-capable
> platforms. Patches [2/5] to [4/5] address various other deviations,
> while patch [5/5] cleans up old gunk in code comments.
>
> I've gone through all drivers implementing pci_error_handlers to ascertain
> that no regressions are introduced by these changes. Nevertheless further
> reviewing and testing would be appreciated to raise the confidence.
> Thanks!
>
> Lukas Wunner (5):
> PCI/AER: Allow drivers to opt in to Bus Reset on Non-Fatal Errors
> PCI/ERR: Fix uevent on failure to recover
> PCI/ERR: Notify drivers on failure to recover
> PCI/ERR: Update device error_state already after reset
> PCI/ERR: Remove remnants of .link_reset() callback
>
> .../ethernet/qlogic/qlcnic/qlcnic_83xx_hw.c | 1 -
> .../net/ethernet/qlogic/qlcnic/qlcnic_main.c | 2 -
> drivers/net/ethernet/sfc/efx_common.c | 3 --
> drivers/net/ethernet/sfc/falcon/efx.c | 3 --
> drivers/net/ethernet/sfc/siena/efx_common.c | 3 --
> drivers/pci/pcie/err.c | 40 ++++++++++++++-----
> drivers/scsi/lpfc/lpfc_init.c | 2 +-
> drivers/scsi/qla2xxx/qla_os.c | 5 ---
> 8 files changed, 32 insertions(+), 27 deletions(-)
Applied to pci/aer for v6.18, thanks, Lukas!
More information about the Linuxppc-dev
mailing list