summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2018-01-31 19:10:25 +0300
committerBjorn Helgaas <helgaas@kernel.org>2018-01-31 19:10:25 +0300
commit86e99150c3ce4726d4f15c64f535b903a66fa76f (patch)
treea0f3467479cf517bf6fca9d2cba138d8bb8769c7
parent1291a0d5049dbc06baaaf66a9ff3f53db493b19b (diff)
parent0f6f1d9fca4ad91ce9b30dc0aa847b0947786261 (diff)
downloadlinux-86e99150c3ce4726d4f15c64f535b903a66fa76f.tar.xz
Merge branch 'pci/aer' into next
* pci/aer: PCI/AER: Return error if AER is not supported PCI/AER: Skip recovery callbacks for correctable errors from ACPI APEI
-rw-r--r--drivers/pci/pcie/aer/aerdrv_core.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/drivers/pci/pcie/aer/aerdrv_core.c b/drivers/pci/pcie/aer/aerdrv_core.c
index 744805232155..92ec13a09a2a 100644
--- a/drivers/pci/pcie/aer/aerdrv_core.c
+++ b/drivers/pci/pcie/aer/aerdrv_core.c
@@ -633,7 +633,8 @@ static void aer_recover_work_func(struct work_struct *work)
continue;
}
cper_print_aer(pdev, entry.severity, entry.regs);
- do_recovery(pdev, entry.severity);
+ if (entry.severity != AER_CORRECTABLE)
+ do_recovery(pdev, entry.severity);
pci_dev_put(pdev);
}
}
@@ -660,7 +661,7 @@ static int get_device_error_info(struct pci_dev *dev, struct aer_err_info *info)
/* The device might not support AER */
if (!pos)
- return 1;
+ return 0;
if (info->severity == AER_CORRECTABLE) {
pci_read_config_dword(dev, pos + PCI_ERR_COR_STATUS,