summaryrefslogtreecommitdiff
path: root/drivers/pci/pcie/aer/aerdrv_core.c
diff options
context:
space:
mode:
authorKeith Busch <keith.busch@intel.com>2017-12-20 00:06:40 +0300
committerBjorn Helgaas <helgaas@kernel.org>2018-01-12 03:41:05 +0300
commit0f6f1d9fca4ad91ce9b30dc0aa847b0947786261 (patch)
treea0f3467479cf517bf6fca9d2cba138d8bb8769c7 /drivers/pci/pcie/aer/aerdrv_core.c
parentb9f80fdc4244b417154ec30d3bc7ec3e76085634 (diff)
downloadlinux-0f6f1d9fca4ad91ce9b30dc0aa847b0947786261.tar.xz
PCI/AER: Return error if AER is not supported
get_device_error_info() reads error information from registers in the AER capability. If we call it for a device that has no AER capability, it should return an error, but previously it returned success. Return 0 (error) if the device doesn't have an AER capability. Signed-off-by: Keith Busch <keith.busch@intel.com> [bhelgaas: changelog] Signed-off-by: Bjorn Helgaas <helgaas@kernel.org>
Diffstat (limited to 'drivers/pci/pcie/aer/aerdrv_core.c')
-rw-r--r--drivers/pci/pcie/aer/aerdrv_core.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/pci/pcie/aer/aerdrv_core.c b/drivers/pci/pcie/aer/aerdrv_core.c
index 3e354f224422..92ec13a09a2a 100644
--- a/drivers/pci/pcie/aer/aerdrv_core.c
+++ b/drivers/pci/pcie/aer/aerdrv_core.c
@@ -661,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,