PCIe r7.0 sec 6.2.4.3 specifies that certain Non-Fatal Errors may be signaled with ERR_COR instead of ERR_NONFATAL. These so-called Advisory Non-Fatal Errors are masked by default and hence not reported by Linux.
This series seeks to change that. The meat of it is in patch [6/6]. There have been several previous attempts to support Advisory Non-Fatal Errors which are all linked in the patch. The preceding patches contain prep work. In particular, they ensure that the detecting agent and layer is reported correctly for each error (patch [1/6] and [2/6]), simplify logging of the error source (patch [3/6]), fix reporting of the TLP Prefix/Header Log (patch [4/6]) and move code around (patch [5/6]). The patches have been tested internally, but further testing would be appreciated to raise the confidence. Thanks! Lukas Wunner (6): PCI/AER: Fix mapping of errors to agent & layer PCI/AER: Log agent & layer for each individual error PCI/AER: Deduplicate logging of Error Source Identification PCI/AER: Emit TLP Log only for unmasked errors PCI/AER: Move retrieval of FEP and TLP Log into helper PCI/AER: Support Advisory Non-Fatal Errors drivers/pci/pci.h | 4 + drivers/pci/pcie/aer.c | 250 ++++++++++++++++++++++++++++++++--------- 2 files changed, 200 insertions(+), 54 deletions(-) -- 2.53.0
