Re: [PATCH v9 0/8] PCI: Consolidate TLP Log reading and printing

Bjorn Helgaas
2025-01-14T23:51:03Z

On Tue, Jan 14, 2025 at 07:08:32PM +0200, Ilpo Järvinen wrote:
> This series has the remaining patches of the AER & DPC TLP Log handling
> consolidation and now includes a few minor improvements to the earlier
> accepted TLP Logging code.
>
> v9:
> - Added patch to define header logging register sizes.
>
> v8:
> - Added missing parameter to kerneldoc.
> - Dropped last patch due to conflict with the pci_printk() cleanup
> series (will move the patch into that series).
>
> v7:
> - Explain in commit message reasoning why eetlp_prefix_max stores Max
> End-End TLP Prefixes value instead of limiting it by the bridge/RP
> imposed limits
> - Take account TLP Prefix Log Present flag.
> - Align PCI_ERR_CAP_* flags in pci_regs.h
> - Add EE_PREFIX_STR define to be able to take its sizeof() for output
> char[] sizing.
>
> v6:
> - Preserve "AER:"/"DPC:" prefix on the printed TLP line
> - New patch to add "AER:" also on other lines of the AER error dump
>
> v5:
> - Fix build with AER=y and DPC=n
> - Match kerneldoc and function parameter name
>
> v4:
> - Added patches:
> - Remove EXPORT of pcie_read_tlp_log()
> - Moved code to pcie/tlp.c and build only with AER enabled
> - Match variables in prototype and function
> - int -> unsigned int conversion
> - eetlp_prefix_max into own patch
> - struct pcie_tlp_log param consistently called "log" within tlp.c
> - Moved function prototypes into drivers/pci/pci.h
> - Describe AER/DPC differences more clearly in one commit message
>
> v3:
> - Small rewording in a commit message
>
> v2:
> - Don't add EXPORT()s
> - Don't include igxbe changes
> - Don't use pr_cont() as it's incompatible with pci_err() and according
> to Andy Shevchenko should not be used in the first place
>
>
> Ilpo Järvinen (8):
> PCI: Don't expose pcie_read_tlp_log() outside of PCI subsystem
> PCI: Move TLP Log handling to own file
> PCI: Add defines for TLP Header/Prefix log sizes
> PCI: Make pcie_read_tlp_log() signature same
> PCI: Use unsigned int i in pcie_read_tlp_log()
> PCI: Store # of supported End-End TLP Prefixes
> PCI: Add TLP Prefix reading into pcie_read_tlp_log()
> PCI: Create helper to print TLP Header and Prefix Log
>
> drivers/pci/ats.c | 2 +-
> drivers/pci/pci.c | 28 ---------
> drivers/pci/pci.h | 9 +++
> drivers/pci/pcie/Makefile | 2 +-
> drivers/pci/pcie/aer.c | 15 ++---
> drivers/pci/pcie/dpc.c | 22 +++----
> drivers/pci/pcie/tlp.c | 115 ++++++++++++++++++++++++++++++++++
> drivers/pci/probe.c | 14 +++--
> drivers/pci/quirks.c | 6 +-
> include/linux/aer.h | 12 +++-
> include/linux/pci.h | 2 +-
> include/uapi/linux/pci_regs.h | 11 ++--
> 12 files changed, 172 insertions(+), 66 deletions(-)
> create mode 100644 drivers/pci/pcie/tlp.c

Applied to pci/err for v6.14, thanks!