All of lore.kernel.org
 help / color / mirror / Atom feed
From: Bjorn Helgaas <helgaas@kernel.org>
To: Jon Pan-Doh <pandoh@google.com>
Cc: "Bjorn Helgaas" <bhelgaas@google.com>,
	"Karolina Stolarek" <karolina.stolarek@oracle.com>,
	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 1/8] PCI/AER: Remove aer_print_port_info
Date: Tue, 4 Mar 2025 12:32:21 -0600	[thread overview]
Message-ID: <20250304183221.GA250118@bhelgaas> (raw)
In-Reply-To: <20250214023543.992372-2-pandoh@google.com>

On Thu, Feb 13, 2025 at 06:35:36PM -0800, Jon Pan-Doh wrote:
> Info logged is duplicated when the source device is processed. In both
> cases, BDF and error severity are derived from aer_error_info. If
> no source device is found, then an error is logged with the BDF from
> aer_error_info.

Nit: say what the patch does in the commit log as well as in the
subject.

> Code flow:
> aer_isr_one_error()
> -> aer_print_port_info()
> -> find_source_device()
>    -> return/pci_info() if no device found else continue
> -> aer_process_err_devices()
>    -> aer_print_error()

Nit: drop "->"; the indentation is enough.

> aer_print_port_info():
> pcieport 0000:00:04.0: Correctable error message received
> from 0000:01:00.0

Nit: don't wrap log messages, and indent them a couple space since
they're quoted material.

> aer_print_error():
> e1000e 0000:01:00.0: PCIe Bus Error: severity=Correctable, type=Data Link Layer, (Receiver ID)
> e1000e 0000:01:00.0:   device [8086:10d3] error status/mask=00000040/0000e000
> e1000e 0000:01:00.0:    [ 6] BadTLP

Give us a clear sample of the log showing the duplicated info.  Are
you're referring to this:

  pcieport 0000:00:04.0: Correctable error message received from 0000:01:00.0
  e1000e 0000:01:00.0: PCIe Bus Error: severity=Correctable, type=Data Link Layer, (Receiver ID)
  e1000e 0000:01:00.0:   device [8086:10d3] error status/mask=00000040/0000e000
  e1000e 0000:01:00.0:    [ 6] BadTLP

where the pcieport message refers to 0000:01:00.0, and the subsequent
e1000e messages also include 0000:01:00.0?

It's true this is redundant information, but that e1000e device may
no longer be accessible.

In that case, I think aer_get_device_error_info() would probably
return 0 because config reads would all return ~0, and
PCI_ERR_COR_STATUS & ~PCI_ERR_COR_MASK would be 0, so
we probably wouldn't see the e1000e messages at all.

> Tested using aer-inject[1]. No more root port log on dmesg.
> 
> [1] https://git.kernel.org/pub/scm/linux/kernel/git/gong.chen/aer-inject.git
> 
> Signed-off-by: Jon Pan-Doh <pandoh@google.com>
> Reviewed-by: Karolina Stolarek <karolina.stolarek@oracle.com>
> ---
>  drivers/pci/pcie/aer.c | 15 ---------------
>  1 file changed, 15 deletions(-)
> 
> diff --git a/drivers/pci/pcie/aer.c b/drivers/pci/pcie/aer.c
> index ad4206125b86..9a8cc81d01e4 100644
> --- a/drivers/pci/pcie/aer.c
> +++ b/drivers/pci/pcie/aer.c
> @@ -733,18 +733,6 @@ void aer_print_error(struct pci_dev *dev, struct aer_err_info *info)
>  			info->severity, info->tlp_header_valid, &info->tlp);
>  }
>  
> -static void aer_print_port_info(struct pci_dev *dev, struct aer_err_info *info)
> -{
> -	u8 bus = info->id >> 8;
> -	u8 devfn = info->id & 0xff;
> -
> -	pci_info(dev, "%s%s error message received from %04x:%02x:%02x.%d\n",
> -		 info->multi_error_valid ? "Multiple " : "",
> -		 aer_error_severity_string[info->severity],
> -		 pci_domain_nr(dev->bus), bus, PCI_SLOT(devfn),
> -		 PCI_FUNC(devfn));
> -}
> -
>  #ifdef CONFIG_ACPI_APEI_PCIEAER
>  int cper_severity_to_aer(int cper_severity)
>  {
> @@ -1296,7 +1284,6 @@ static void aer_isr_one_error(struct aer_rpc *rpc,
>  			e_info.multi_error_valid = 1;
>  		else
>  			e_info.multi_error_valid = 0;
> -		aer_print_port_info(pdev, &e_info);
>  
>  		if (find_source_device(pdev, &e_info))
>  			aer_process_err_devices(&e_info);
> @@ -1315,8 +1302,6 @@ static void aer_isr_one_error(struct aer_rpc *rpc,
>  		else
>  			e_info.multi_error_valid = 0;
>  
> -		aer_print_port_info(pdev, &e_info);
> -
>  		if (find_source_device(pdev, &e_info))
>  			aer_process_err_devices(&e_info);
>  	}
> -- 
> 2.48.1.601.g30ceb7b040-goog
> 

  reply	other threads:[~2025-03-04 18:32 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 [this message]
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
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=20250304183221.GA250118@bhelgaas \
    --to=helgaas@kernel.org \
    --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=karolina.stolarek@oracle.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 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.