From: Terry Bowman Date: Wed, 14 Jan 2026 18:20:31 +0000 (-0600) Subject: PCI/AER: Update is_internal_error() to be non-static is_aer_internal_error() X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=51ce56b1a5d6f7263739d4766ae445463c74b689;p=thirdparty%2Fkernel%2Flinux.git PCI/AER: Update is_internal_error() to be non-static is_aer_internal_error() The AER driver includes significant logic for handling CXL protocol errors. The AER driver will be updated in the future to separate the AER and CXL logic. Rename the is_internal_error() function to is_aer_internal_error() as it gives a more precise indication of the purpose. Make is_aer_internal_error() non-static to allow for the 2 different CXL topology error model implementations (RCH and VH) to share this helper. Signed-off-by: Terry Bowman Link: https://patch.msgid.link/20260114182055.46029-11-terry.bowman@amd.com Acked-by: Bjorn Helgaas Signed-off-by: Dan Williams Signed-off-by: Dave Jiang --- diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c index 972ecaf6a8321..6943a75e6a787 100644 --- a/drivers/pci/pcie/aer.c +++ b/drivers/pci/pcie/aer.c @@ -1171,7 +1171,7 @@ static bool is_cxl_mem_dev(struct pci_dev *dev) return true; } -static bool is_internal_error(struct aer_err_info *info) +bool is_aer_internal_error(struct aer_err_info *info) { if (info->severity == AER_CORRECTABLE) return info->status & PCI_ERR_COR_INTERNAL; @@ -1216,7 +1216,7 @@ static void cxl_rch_handle_error(struct pci_dev *dev, struct aer_err_info *info) * device driver. */ if (pci_pcie_type(dev) == PCI_EXP_TYPE_RC_EC && - is_internal_error(info)) + is_aer_internal_error(info)) pcie_walk_rcec(dev, cxl_rch_handle_error_iter, info); } diff --git a/drivers/pci/pcie/portdrv.h b/drivers/pci/pcie/portdrv.h index bd29d1cc7b8bd..e7a0a2cffea93 100644 --- a/drivers/pci/pcie/portdrv.h +++ b/drivers/pci/pcie/portdrv.h @@ -123,4 +123,13 @@ static inline void pcie_pme_interrupt_enable(struct pci_dev *dev, bool en) {} #endif /* !CONFIG_PCIE_PME */ struct device *pcie_port_find_device(struct pci_dev *dev, u32 service); + +struct aer_err_info; + +#ifdef CONFIG_PCIEAER_CXL +bool is_aer_internal_error(struct aer_err_info *info); +#else +static inline bool is_aer_internal_error(struct aer_err_info *info) { return false; } +#endif /* CONFIG_PCIEAER_CXL */ + #endif /* _PORTDRV_H_ */