From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: linux-pci@vger.kernel.org, Jon Pan-Doh <pandoh@google.com>,
Karolina Stolarek <karolina.stolarek@oracle.com>,
Weinan Liu <wnliu@google.com>,
Martin Petersen <martin.petersen@oracle.com>,
Ben Fuller <ben.fuller@oracle.com>,
Drew Walton <drewwalton@microsoft.com>,
Anil Agrawal <anilagrawal@meta.com>,
Tony Luck <tony.luck@intel.com>,
Sathyanarayanan Kuppuswamy
<sathyanarayanan.kuppuswamy@linux.intel.com>,
Lukas Wunner <lukas@wunner.de>,
Jonathan Cameron <Jonathan.Cameron@huawei.com>,
Sargun Dhillon <sargun@meta.com>,
"Paul E . McKenney" <paulmck@kernel.org>,
Mahesh J Salgaonkar <mahesh@linux.ibm.com>,
Oliver O'Halloran <oohall@gmail.com>,
Kai-Heng Feng <kaihengf@nvidia.com>,
Keith Busch <kbusch@kernel.org>,
Robert Richter <rrichter@amd.com>,
Terry Bowman <terry.bowman@amd.com>,
Shiju Jose <shiju.jose@huawei.com>,
Dave Jiang <dave.jiang@intel.com>,
LKML <linux-kernel@vger.kernel.org>,
linuxppc-dev@lists.ozlabs.org,
Bjorn Helgaas <bhelgaas@google.com>
Subject: Re: [PATCH v8 13/20] PCI/ERR: Add printk level to pcie_print_tlp_log()
Date: Fri, 23 May 2025 12:56:35 +0300 (EEST) [thread overview]
Message-ID: <ce537bc4-a302-4da5-2e65-0fb07c9e3e1d@linux.intel.com> (raw)
In-Reply-To: <20250522232339.1525671-14-helgaas@kernel.org>
[-- Attachment #1: Type: text/plain, Size: 3928 bytes --]
On Thu, 22 May 2025, Bjorn Helgaas wrote:
> From: Bjorn Helgaas <bhelgaas@google.com>
>
> aer_print_error() produces output at a printk level (KERN_ERR/KERN_WARNING/
> etc) that depends on the kind of error, and it calls pcie_print_tlp_log(),
> which previously always produced output at KERN_ERR.
>
> Add a "level" parameter so aer_print_error() can control the level of the
> pcie_print_tlp_log() output to match.
>
> Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
> ---
> drivers/pci/pci.h | 3 ++-
> drivers/pci/pcie/aer.c | 5 +++--
> drivers/pci/pcie/dpc.c | 2 +-
> drivers/pci/pcie/tlp.c | 6 ++++--
> 4 files changed, 10 insertions(+), 6 deletions(-)
>
> diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
> index 705f9ef58acc..1a9bfc708757 100644
> --- a/drivers/pci/pci.h
> +++ b/drivers/pci/pci.h
> @@ -613,7 +613,8 @@ int pcie_read_tlp_log(struct pci_dev *dev, int where, int where2,
> struct pcie_tlp_log *log);
> unsigned int aer_tlp_log_len(struct pci_dev *dev, u32 aercc);
> void pcie_print_tlp_log(const struct pci_dev *dev,
> - const struct pcie_tlp_log *log, const char *pfx);
> + const struct pcie_tlp_log *log, const char *level,
> + const char *pfx);
> #endif /* CONFIG_PCIEAER */
>
> #ifdef CONFIG_PCIEPORTBUS
> diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c
> index f80c78846a14..f0936759ba8b 100644
> --- a/drivers/pci/pcie/aer.c
> +++ b/drivers/pci/pcie/aer.c
> @@ -734,7 +734,7 @@ void aer_print_error(struct pci_dev *dev, struct aer_err_info *info)
> __aer_print_error(dev, info);
>
> if (info->tlp_header_valid)
> - pcie_print_tlp_log(dev, &info->tlp, dev_fmt(" "));
> + pcie_print_tlp_log(dev, &info->tlp, level, dev_fmt(" "));
>
> out:
> if (info->id && info->error_dev_num > 1 && info->id == id)
> @@ -797,7 +797,8 @@ void pci_print_aer(struct pci_dev *dev, int aer_severity,
> aer->uncor_severity);
>
> if (tlp_header_valid)
> - pcie_print_tlp_log(dev, &aer->header_log, dev_fmt(" "));
> + pcie_print_tlp_log(dev, &aer->header_log, info.level,
> + dev_fmt(" "));
> }
> EXPORT_SYMBOL_NS_GPL(pci_print_aer, "CXL");
>
> diff --git a/drivers/pci/pcie/dpc.c b/drivers/pci/pcie/dpc.c
> index 6c98fabdba57..7ae1590ea1da 100644
> --- a/drivers/pci/pcie/dpc.c
> +++ b/drivers/pci/pcie/dpc.c
> @@ -222,7 +222,7 @@ static void dpc_process_rp_pio_error(struct pci_dev *pdev)
> dpc_tlp_log_len(pdev),
> pdev->subordinate->flit_mode,
> &tlp_log);
> - pcie_print_tlp_log(pdev, &tlp_log, dev_fmt(""));
> + pcie_print_tlp_log(pdev, &tlp_log, KERN_ERR, dev_fmt(""));
>
> if (pdev->dpc_rp_log_size < PCIE_STD_NUM_TLP_HEADERLOG + 1)
> goto clear_status;
> diff --git a/drivers/pci/pcie/tlp.c b/drivers/pci/pcie/tlp.c
> index 890d5391d7f5..71f8fc9ea2ed 100644
> --- a/drivers/pci/pcie/tlp.c
> +++ b/drivers/pci/pcie/tlp.c
> @@ -98,12 +98,14 @@ int pcie_read_tlp_log(struct pci_dev *dev, int where, int where2,
> * pcie_print_tlp_log - Print TLP Header / Prefix Log contents
> * @dev: PCIe device
> * @log: TLP Log structure
> + * @level: Printk log level
> * @pfx: String prefix
> *
> * Prints TLP Header and Prefix Log information held by @log.
> */
> void pcie_print_tlp_log(const struct pci_dev *dev,
> - const struct pcie_tlp_log *log, const char *pfx)
> + const struct pcie_tlp_log *log, const char *level,
> + const char *pfx)
> {
> /* EE_PREFIX_STR fits the extended DW space needed for the Flit mode */
> char buf[11 * PCIE_STD_MAX_TLP_HEADERLOG + 1];
> @@ -130,6 +132,6 @@ void pcie_print_tlp_log(const struct pci_dev *dev,
> }
> }
>
> - pci_err(dev, "%sTLP Header%s: %s\n", pfx,
> + dev_printk(level, &dev->dev, "%sTLP Header%s: %s\n", pfx,
> log->flit ? " (Flit)" : "", buf);
> }
>
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
--
i.
next prev parent reply other threads:[~2025-05-23 9:56 UTC|newest]
Thread overview: 38+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-05-22 23:21 [PATCH v8 00/20] Rate limit AER logs Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 01/20] PCI/DPC: Initialize aer_err_info before using it Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 02/20] PCI/DPC: Log Error Source ID only when valid Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 03/20] PCI/AER: Factor COR/UNCOR error handling out from aer_isr_one_error() Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 04/20] PCI/AER: Consolidate Error Source ID logging in aer_isr_one_error_type() Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 05/20] PCI/AER: Extract bus/dev/fn in aer_print_port_info() with PCI_BUS_NUM(), etc Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 06/20] PCI/AER: Rename aer_print_port_info() to aer_print_source() Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 07/20] PCI/AER: Move aer_print_source() earlier in file Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 08/20] PCI/AER: Initialize aer_err_info before using it Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 09/20] PCI/AER: Simplify pci_print_aer() Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 10/20] PCI/AER: Update statistics before ratelimiting Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 11/20] PCI/AER: Trace error event " Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 12/20] PCI/AER: Check log level once and remember it Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 13/20] PCI/ERR: Add printk level to pcie_print_tlp_log() Bjorn Helgaas
2025-05-22 23:44 ` Sathyanarayanan Kuppuswamy
2025-05-23 9:56 ` Ilpo Järvinen [this message]
2025-05-28 6:38 ` Lukas Wunner
2025-05-28 10:00 ` Ilpo Järvinen
2025-05-22 23:21 ` [PATCH v8 14/20] PCI/AER: Reduce pci_print_aer() correctable error level to KERN_WARNING Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 15/20] PCI/AER: Rename struct aer_stats to aer_info Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 16/20] PCI/AER: Convert aer_get_device_error_info(), aer_print_error() to index Bjorn Helgaas
2025-05-22 23:58 ` Sathyanarayanan Kuppuswamy
2025-05-23 11:13 ` Ilpo Järvinen
2025-05-23 16:12 ` Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 17/20] PCI/AER: Simplify add_error_device() Bjorn Helgaas
2025-05-22 23:57 ` Sathyanarayanan Kuppuswamy
2025-05-23 11:14 ` Ilpo Järvinen
2025-05-22 23:21 ` [PATCH v8 18/20] PCI/AER: Ratelimit correctable and non-fatal error logging Bjorn Helgaas
2025-05-22 23:56 ` Sathyanarayanan Kuppuswamy
2025-05-23 16:06 ` Bjorn Helgaas
2025-08-01 13:16 ` Breno Leitao
2025-08-01 13:35 ` Breno Leitao
2025-10-01 21:38 ` Bjorn Helgaas
2025-10-02 9:08 ` Breno Leitao
2025-05-22 23:21 ` [PATCH v8 19/20] PCI/AER: Add ratelimits to PCI AER Documentation Bjorn Helgaas
2025-05-22 23:21 ` [PATCH v8 20/20] PCI/AER: Add sysfs attributes for log ratelimits Bjorn Helgaas
2025-05-22 23:50 ` Sathyanarayanan Kuppuswamy
2025-05-23 16:21 ` [PATCH v8 00/20] Rate limit AER logs Bjorn Helgaas
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ce537bc4-a302-4da5-2e65-0fb07c9e3e1d@linux.intel.com \
--to=ilpo.jarvinen@linux.intel.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=anilagrawal@meta.com \
--cc=ben.fuller@oracle.com \
--cc=bhelgaas@google.com \
--cc=dave.jiang@intel.com \
--cc=drewwalton@microsoft.com \
--cc=helgaas@kernel.org \
--cc=kaihengf@nvidia.com \
--cc=karolina.stolarek@oracle.com \
--cc=kbusch@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=lukas@wunner.de \
--cc=mahesh@linux.ibm.com \
--cc=martin.petersen@oracle.com \
--cc=oohall@gmail.com \
--cc=pandoh@google.com \
--cc=paulmck@kernel.org \
--cc=rrichter@amd.com \
--cc=sargun@meta.com \
--cc=sathyanarayanan.kuppuswamy@linux.intel.com \
--cc=shiju.jose@huawei.com \
--cc=terry.bowman@amd.com \
--cc=tony.luck@intel.com \
--cc=wnliu@google.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.