On Tue, May 20, 2025 at 02:37:33PM +0300, Ilpo Järvinen wrote: > On Mon, 19 May 2025, Bjorn Helgaas wrote: > > > From: Karolina Stolarek <karolina.stola...@oracle.com> > > > > Some existing logs in pci_print_aer() log with error severity by default. > > Convert them to depend on error type (consistent with rest of AER logging). > > > > Link: https://lore.kernel.org/r/20250321015806.954866-3-pan...@google.com > > Signed-off-by: Karolina Stolarek <karolina.stola...@oracle.com> > > Signed-off-by: Bjorn Helgaas <bhelg...@google.com> > > --- > > drivers/pci/pcie/aer.c | 16 +++++++++++----- > > 1 file changed, 11 insertions(+), 5 deletions(-) > > > > diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c > > index 73b03a195b14..06a7dda20846 100644 > > --- a/drivers/pci/pcie/aer.c > > +++ b/drivers/pci/pcie/aer.c > > @@ -788,15 +788,21 @@ void pci_print_aer(struct pci_dev *dev, int > > aer_severity, > > layer = AER_GET_LAYER_ERROR(aer_severity, status); > > agent = AER_GET_AGENT(aer_severity, status); > > > > - pci_err(dev, "aer_status: 0x%08x, aer_mask: 0x%08x\n", status, mask); > > + aer_printk(info.level, dev, "aer_status: 0x%08x, aer_mask: 0x%08x\n", > > + status, mask); > > __aer_print_error(dev, &info); > > - pci_err(dev, "aer_layer=%s, aer_agent=%s\n", > > - aer_error_layer[layer], aer_agent_string[agent]); > > + aer_printk(info.level, dev, "aer_layer=%s, aer_agent=%s\n", > > + aer_error_layer[layer], aer_agent_string[agent]); > > > > if (aer_severity != AER_CORRECTABLE) > > - pci_err(dev, "aer_uncor_severity: 0x%08x\n", > > - aer->uncor_severity); > > + aer_printk(info.level, dev, "aer_uncor_severity: 0x%08x\n", > > + aer->uncor_severity); > > > > + /* > > + * pcie_print_tlp_log() uses KERN_ERR, but we only call it when > > + * tlp_header_valid is set, and info.level is always KERN_ERR in > > + * that case. > > + */ > > if (tlp_header_valid) > > pcie_print_tlp_log(dev, &aer->header_log, dev_fmt(" ")); > > There's another similar callsite but only this has the comment added. I > was thinking if this call could be made from __aer_print_error(). There > would be small change in order of messages but I can't seem to decide if > it would be bad/good.
I guess the other caller is dpc_process_rp_pio_error(), which uses pci_err() for other logging, so at least it matches the level used by pcie_print_tlp_log(). This patch uses info.level to control the message level, and pcie_print_tlp_log() doesn't look at info.level. I added this comment to explain why that's OK and the message level happens to match already. Maybe not super ideal long term.