From: Karolina Stolarek <karolina.stolarek@oracle.com>
To: Jon Pan-Doh <pandoh@google.com>, Bjorn Helgaas <bhelgaas@google.com>
Cc: linux-pci@vger.kernel.org,
"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>,
"Ilpo Järvinen" <ilpo.jarvinen@linux.intel.com>,
"Sathyanarayanan Kuppuswamy"
<sathyanarayanan.kuppuswamy@linux.intel.com>,
"Lukas Wunner" <lukas@wunner.de>,
"Jonathan Cameron" <Jonathan.Cameron@huawei.com>
Subject: Re: [PATCH v2 3/8] PCI/AER: Move AER stat collection out of __aer_print_error
Date: Mon, 17 Feb 2025 12:29:06 +0100 [thread overview]
Message-ID: <52d8c880-85e6-47a4-9734-73a20bb42414@oracle.com> (raw)
In-Reply-To: <20250214023543.992372-4-pandoh@google.com>
On 14/02/2025 03:35, Jon Pan-Doh wrote:
> Decouple stat collection from internal AER print functions. AERs from ghes
> or cxl drivers have stat collection in pci_print_aer as that is where
> aer_err_info is populated.
>
> Tested using aer-inject[1]. AER sysfs counters still updated correctly.
I don't think we have to mention that it was tested. In other patches
you mention specific examples that illustrate the change nicely, but we
don't get the same value from the statement above.
>
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/gong.chen/aer-inject.git
>
> Signed-off-by: Jon Pan-Doh <pandoh@google.com>
> ---
> drivers/pci/pci.h | 1 +
> drivers/pci/pcie/aer.c | 10 ++++++----
> drivers/pci/pcie/dpc.c | 1 +
> 3 files changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/pci/pci.h b/drivers/pci/pci.h
> index 8cb816ee5388..26104aee06c0 100644
> --- a/drivers/pci/pci.h
> +++ b/drivers/pci/pci.h
> @@ -550,6 +550,7 @@ struct aer_err_info {
> };
>
> int aer_get_device_error_info(struct pci_dev *dev, struct aer_err_info *info);
> +void pci_dev_aer_stats_incr(struct pci_dev *pdev, struct aer_err_info *info);
> void aer_print_error(struct pci_dev *dev, struct aer_err_info *info, const char *level);
>
> int pcie_read_tlp_log(struct pci_dev *dev, int where, int where2,
> diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c
> index f1fdaa052cf6..d6edb95d468f 100644
> --- a/drivers/pci/pcie/aer.c
> +++ b/drivers/pci/pcie/aer.c
> @@ -617,8 +617,7 @@ const struct attribute_group aer_stats_attr_group = {
> .is_visible = aer_stats_attrs_are_visible,
> };
>
> -static void pci_dev_aer_stats_incr(struct pci_dev *pdev,
> - struct aer_err_info *info)
> +void pci_dev_aer_stats_incr(struct pci_dev *pdev, struct aer_err_info *info)
> {
> unsigned long status = info->status & ~info->mask;
> int i, max = -1;
> @@ -691,7 +690,6 @@ static void __aer_print_error(struct pci_dev *dev,
> aer_printk(level, dev, " [%2d] %-22s%s\n", i, errmsg,
> info->first_error == i ? " (First)" : "");
> }
> - pci_dev_aer_stats_incr(dev, info);
> }
>
> void aer_print_error(struct pci_dev *dev, struct aer_err_info *info,
> @@ -772,6 +770,8 @@ void pci_print_aer(struct pci_dev *dev, int aer_severity,
> info.mask = mask;
> info.first_error = PCI_ERR_CAP_FEP(aer->cap_control);
>
> + pci_dev_aer_stats_incr(dev, &info);
With this change, we increment the stats when we iterate the recovery
queue in ghes_handle_aer. Is there a possibility that in the GHES path
we would increment the stats twice? First via AER module (aer_isr) and
then in aer_recover_work_func, or is it either/or?
All the best,
Karolina
next prev parent reply other threads:[~2025-02-17 11:29 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-02-14 2:35 [PATCH v2 0/8] Rate limit AER logs Jon Pan-Doh
2025-02-14 2:35 ` [PATCH v2 1/8] PCI/AER: Remove aer_print_port_info Jon Pan-Doh
2025-03-04 18:32 ` Bjorn Helgaas
2025-03-05 1:04 ` Jon Pan-Doh
2025-03-05 22:35 ` Bjorn Helgaas
2025-03-06 1:32 ` Jon Pan-Doh
2025-03-07 0:02 ` Bjorn Helgaas
2025-02-14 2:35 ` [PATCH v2 2/8] PCI/AER: Use the same log level for all messages Jon Pan-Doh
2025-02-17 11:25 ` Karolina Stolarek
2025-02-19 2:48 ` Jon Pan-Doh
2025-02-24 11:26 ` Karolina Stolarek
2025-02-28 22:25 ` Jon Pan-Doh
2025-03-04 18:59 ` Bjorn Helgaas
2025-03-07 12:04 ` Karolina Stolarek
2025-03-13 21:15 ` Jon Pan-Doh
2025-02-14 2:35 ` [PATCH v2 3/8] PCI/AER: Move AER stat collection out of __aer_print_error Jon Pan-Doh
2025-02-17 11:29 ` Karolina Stolarek [this message]
2025-02-19 2:48 ` Jon Pan-Doh
2025-02-24 11:26 ` Karolina Stolarek
2025-02-14 2:35 ` [PATCH v2 4/8] PCI/AER: Rename struct aer_stats to aer_report Jon Pan-Doh
2025-02-17 11:29 ` Karolina Stolarek
2025-02-19 2:49 ` Jon Pan-Doh
2025-02-14 2:35 ` [PATCH v2 5/8] PCI/AER: Introduce ratelimit for error logs Jon Pan-Doh
2025-02-17 11:29 ` Karolina Stolarek
2025-02-19 2:49 ` Jon Pan-Doh
2025-02-14 2:35 ` [PATCH v2 6/8] PCI/AER: Add ratelimits to PCI AER Documentation Jon Pan-Doh
2025-02-17 11:30 ` Karolina Stolarek
2025-02-14 2:35 ` [PATCH v2 7/8] PCI/AER: Add AER sysfs attributes for log ratelimits Jon Pan-Doh
2025-02-17 13:31 ` Karolina Stolarek
2025-02-19 2:50 ` Jon Pan-Doh
2025-02-24 11:28 ` Karolina Stolarek
2025-02-19 5:42 ` Jon Pan-Doh
2025-02-25 13:56 ` Karolina Stolarek
2025-02-28 22:28 ` Jon Pan-Doh
2025-03-03 8:31 ` Karolina Stolarek
2025-03-04 0:58 ` Jon Pan-Doh
2025-03-07 12:10 ` Karolina Stolarek
2025-03-07 19:41 ` Bjorn Helgaas
2025-02-14 2:35 ` [PATCH v2 8/8] PCI/AER: Update AER sysfs ABI filename Jon Pan-Doh
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=52d8c880-85e6-47a4-9734-73a20bb42414@oracle.com \
--to=karolina.stolarek@oracle.com \
--cc=Jonathan.Cameron@huawei.com \
--cc=anilagrawal@meta.com \
--cc=ben.fuller@oracle.com \
--cc=bhelgaas@google.com \
--cc=drewwalton@microsoft.com \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=linux-pci@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=martin.petersen@oracle.com \
--cc=pandoh@google.com \
--cc=sathyanarayanan.kuppuswamy@linux.intel.com \
--cc=tony.luck@intel.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