diff options
author | 2017-11-14 12:11:20 -0600 | |
---|---|---|
committer | 2017-11-14 12:11:20 -0600 | |
commit | f5b4f7ce8697209614ca516ed6ceea50e52f9600 (patch) | |
tree | 73105f86d2b58ff6c5cf027c5d012c8d62ec0370 | |
parent | Merge branch 'pci/acpi' into next (diff) | |
parent | PCI/AER: Report non-fatal errors only to the affected endpoint (diff) | |
download | linux-dev-f5b4f7ce8697209614ca516ed6ceea50e52f9600.tar.xz linux-dev-f5b4f7ce8697209614ca516ed6ceea50e52f9600.zip |
Merge branch 'pci/aer' into next
* pci/aer:
PCI/AER: Report non-fatal errors only to the affected endpoint
-rw-r--r-- | drivers/pci/pcie/aer/aerdrv_core.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/drivers/pci/pcie/aer/aerdrv_core.c b/drivers/pci/pcie/aer/aerdrv_core.c index 890efcc574cb..744805232155 100644 --- a/drivers/pci/pcie/aer/aerdrv_core.c +++ b/drivers/pci/pcie/aer/aerdrv_core.c @@ -390,7 +390,14 @@ static pci_ers_result_t broadcast_error_message(struct pci_dev *dev, * If the error is reported by an end point, we think this * error is related to the upstream link of the end point. */ - pci_walk_bus(dev->bus, cb, &result_data); + if (state == pci_channel_io_normal) + /* + * the error is non fatal so the bus is ok, just invoke + * the callback for the function that logged the error. + */ + cb(dev, &result_data); + else + pci_walk_bus(dev->bus, cb, &result_data); } return result_data.result; |