From: "Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>
To: Bjorn Helgaas <helgaas@kernel.org>
Cc: linux-pci@vger.kernel.org, Bjorn Helgaas <bhelgaas@google.com>,
Mahesh J Salgaonkar <mahesh@linux.ibm.com>,
Oliver O'Halloran <oohall@gmail.com>,
Lukas Wunner <lukas@wunner.de>,
LKML <linux-kernel@vger.kernel.org>,
linuxppc-dev@lists.ozlabs.org
Subject: Re: [PATCH v5 7/7] PCI: Create helper to print TLP Header and Prefix Log
Date: Mon, 2 Sep 2024 20:20:41 +0300 (EEST) [thread overview]
Message-ID: <b0484353-8ba5-02c2-e78c-d51aba55bbb7@linux.intel.com> (raw)
In-Reply-To: <20240830191129.GA115840@bhelgaas>
[-- Attachment #1: Type: text/plain, Size: 3360 bytes --]
On Fri, 30 Aug 2024, Bjorn Helgaas wrote:
> On Tue, May 14, 2024 at 02:31:09PM +0300, Ilpo Järvinen wrote:
> > Add pcie_print_tlp_log() helper to print TLP Header and Prefix Log.
> > Print End-End Prefixes only if they are non-zero.
> >
> > Consolidate the few places which currently print TLP using custom
> > formatting.
> >
> > The first attempt used pr_cont() instead of building a string first but
> > it turns out pr_cont() is not compatible with pci_err() and prints on a
> > separate line. When I asked about this, Andy Shevchenko suggested
> > pr_cont() should not be used in the first place (to eventually get rid
> > of it) so pr_cont() is now replaced with building the string first.
> >
> > Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
> > ---
> > drivers/pci/pci.h | 2 ++
> > drivers/pci/pcie/aer.c | 10 ++--------
> > drivers/pci/pcie/dpc.c | 5 +----
> > drivers/pci/pcie/tlp.c | 31 +++++++++++++++++++++++++++++++
> > 4 files changed, 36 insertions(+), 12 deletions(-)
> >
> > diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
> > index 7afdd71f9026..45083e62892c 100644
> > --- a/drivers/pci/pci.h
> > +++ b/drivers/pci/pci.h
> > @@ -423,6 +423,8 @@ void aer_print_error(struct pci_dev *dev, struct aer_err_info *info);
> > int pcie_read_tlp_log(struct pci_dev *dev, int where, int where2,
> > unsigned int tlp_len, struct pcie_tlp_log *log);
> > unsigned int aer_tlp_log_len(struct pci_dev *dev);
> > +void pcie_print_tlp_log(const struct pci_dev *dev,
> > + const struct pcie_tlp_log *log, const char *pfx);
> > #endif /* CONFIG_PCIEAER */
> >
> > #ifdef CONFIG_PCIEPORTBUS
> > diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c
> > index ecc1dea5a208..efb9e728fe94 100644
> > --- a/drivers/pci/pcie/aer.c
> > +++ b/drivers/pci/pcie/aer.c
> > @@ -664,12 +664,6 @@ static void pci_rootport_aer_stats_incr(struct pci_dev *pdev,
> > }
> > }
> >
> > -static void __print_tlp_header(struct pci_dev *dev, struct pcie_tlp_log *t)
> > -{
> > - pci_err(dev, " TLP Header: %08x %08x %08x %08x\n",
> > - t->dw[0], t->dw[1], t->dw[2], t->dw[3]);
> > -}
> > -
> > static void __aer_print_error(struct pci_dev *dev,
> > struct aer_err_info *info)
> > {
> > @@ -724,7 +718,7 @@ void aer_print_error(struct pci_dev *dev, struct aer_err_info *info)
> > __aer_print_error(dev, info);
> >
> > if (info->tlp_header_valid)
> > - __print_tlp_header(dev, &info->tlp);
> > + pcie_print_tlp_log(dev, &info->tlp, " ");
>
> I see you went to some trouble to preserve the previous output, down
> to the number of spaces prefixing it.
>
> But more than the leading spaces, I think what people will notice is
> that previously AER and DPC dmesgs contain the "AER: " or "DPC: "
> prefixes implicitly added by the dev_fmt definitions [1], where now
> IIUC they won't.
>
> I think adding dev_fmt("") here should take care of that, e.g.,
>
> pcie_print_tlp_log(dev, &info->tlp, dev_fmt(""));
>
> [1] https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1990272
Okay, I'll fix it and resend but looking into that output, it doesn't
look very consistent when it comes to prefixes as the lines in between do
not start with "AER: " either. Perhaps those lines should be changed as
well?
--
i.
next prev parent reply other threads:[~2024-09-02 17:22 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-05-14 11:31 [PATCH v5 0/7] PCI: Consolidate TLP Log reading and printing Ilpo Järvinen
2024-05-14 11:31 ` [PATCH v5 1/7] PCI: Don't expose pcie_read_tlp_log() outside of PCI subsystem Ilpo Järvinen
2024-05-14 11:31 ` [PATCH v5 2/7] PCI: Move TLP Log handling to own file Ilpo Järvinen
2024-05-14 11:31 ` [PATCH v5 3/7] PCI: Make pcie_read_tlp_log() signature same Ilpo Järvinen
2024-05-14 11:31 ` [PATCH v5 4/7] PCI: Use unsigned int i in pcie_read_tlp_log() Ilpo Järvinen
2024-05-14 11:31 ` [PATCH v5 5/7] PCI: Store # of supported End-End TLP Prefixes Ilpo Järvinen
2024-05-14 11:31 ` [PATCH v5 6/7] PCI: Add TLP Prefix reading into pcie_read_tlp_log() Ilpo Järvinen
2024-05-14 11:31 ` [PATCH v5 7/7] PCI: Create helper to print TLP Header and Prefix Log Ilpo Järvinen
2024-08-30 19:11 ` Bjorn Helgaas
2024-09-02 17:20 ` Ilpo Järvinen [this message]
2024-09-02 18:52 ` Bjorn Helgaas
2024-08-30 12:23 ` [PATCH v5 0/7] PCI: Consolidate TLP Log reading and printing Ilpo Järvinen
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=b0484353-8ba5-02c2-e78c-d51aba55bbb7@linux.intel.com \
--to=ilpo.jarvinen@linux.intel.com \
--cc=bhelgaas@google.com \
--cc=helgaas@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=oohall@gmail.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).