linux-stable/drivers/pci
Bjorn Helgaas 82006e24aa PCI/AER: Decode Requester ID when no error info found
[ Upstream commit 1291b716bb ]

When a device with AER detects an error, it logs error information in its
own AER Error Status registers.  It may send an Error Message to the Root
Port (RCEC in the case of an RCiEP), which logs the fact that an Error
Message was received (Root Error Status) and the Requester ID of the
message source (Error Source Identification).

aer_print_port_info() prints the Requester ID from the Root Port Error
Source in the usual Linux "bb:dd.f" format, but when find_source_device()
finds no error details in the hierarchy below the Root Port, it printed the
raw Requester ID without decoding it.

Decode the Requester ID in the usual Linux format so it matches other
messages.

Sample message changes:

  - pcieport 0000:00:1c.5: AER: Correctable error received: 0000:00:1c.5
  - pcieport 0000:00:1c.5: AER: can't find device of ID00e5
  + pcieport 0000:00:1c.5: AER: Correctable error message received from 0000:00:1c.5
  + pcieport 0000:00:1c.5: AER: found no error details for 0000:00:1c.5

Link: https://lore.kernel.org/r/20231206224231.732765-3-helgaas@kernel.org
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
Reviewed-by: Jonathan Cameron <Jonathan.Cameron@huawei.com>
Reviewed-by: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@linux.intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2024-02-23 08:54:51 +01:00
..
controller PCI: keystone: Fix race condition when initializing PHYs 2024-01-25 14:52:52 -08:00
endpoint
hotplug Revert "PCI: acpiphp: Reassign resources on bridge if necessary" 2023-12-20 15:17:38 +01:00
pcie PCI/AER: Decode Requester ID when no error info found 2024-02-23 08:54:51 +01:00
switch PCI: switchtec: Fix stdev_release() crash after surprise hot remove 2024-02-23 08:54:50 +01:00
access.c
ats.c
bus.c PCI: s390: Fix use-after-free of PCI resources with per-function hotplug 2023-03-22 13:31:24 +01:00
ecam.c
host-bridge.c
iov.c PCI/IOV: Enlarge virtfn sysfs name buffer 2023-03-10 09:39:37 +01:00
irq.c
Kconfig
Makefile
mmap.c
msi.c
of.c
p2pdma.c
pci-acpi.c PCI/sysfs: Protect driver's D3cold preference from user space 2023-11-28 16:56:28 +00:00
pci-bridge-emul.c
pci-bridge-emul.h
pci-driver.c PCI: Unify delay handling for reset and resume 2023-03-22 13:31:37 +01:00
pci-label.c
pci-mid.c
pci-pf-stub.c
pci-stub.c
pci-sysfs.c PCI/sysfs: Protect driver's D3cold preference from user space 2023-11-28 16:56:28 +00:00
pci.c Revert "PCI/ASPM: Remove pcie_aspm_pm_state_change()" 2024-01-15 18:51:08 +01:00
pci.h PCI: Fix 64GT/s effective data rate calculation 2024-02-23 08:54:51 +01:00
probe.c
proc.c
quirks.c PCI: Only override AMD USB controller if required 2024-02-23 08:54:50 +01:00
remove.c
rom.c
search.c
setup-bus.c PCI: Take other bus devices into account when distributing resources 2023-03-11 13:57:37 +01:00
setup-irq.c
setup-res.c
slot.c
syscall.c
vc.c
vpd.c
xen-pcifront.c