From: Bjorn Helgaas <helgaas@kernel.org>
To: Dave Jiang <dave.jiang@intel.com>
Cc: linux-pci@vger.kernel.org,
Dan Williams <dan.j.williams@intel.com>,
bhelgaas@google.com, lukas@wunner.de, Stefan Roese <sr@denx.de>,
Kuppuswamy Sathyanarayanan
<sathyanarayanan.kuppuswamy@linux.intel.com>,
Jonathan Cameron <Jonathan.Cameron@huawei.com>
Subject: Re: [PATCH] PCI/AER: Remove deprecated documentation for pcie_enable_pcie_error_reporting()
Date: Tue, 14 Feb 2023 11:28:31 -0600 [thread overview]
Message-ID: <20230214172831.GA3046378@bhelgaas> (raw)
In-Reply-To: <167639333373.777843.2141436875951823865.stgit@djiang5-mobl3.local>
[+cc Stefan, Sathy, Jonathan]
On Tue, Feb 14, 2023 at 09:48:55AM -0700, Dave Jiang wrote:
> With commit [1] upstream that enables AER reporting by default for all PCIe
> devices, the documentation for pcie_enable_pcie_error_reporting() is no
> longer necessary. Remove references to the helper function.
>
> [1]: commit f26e58bf6f54 ("PCI/AER: Enable error reporting when AER is native")
>
> Suggested-by: Dan Williams <dan.j.williams@intel.com>
> Signed-off-by: Dave Jiang <dave.jiang@intel.com>
Thanks! I'll attach my work-in-progress patch from yesterday for your
comments. I think we can go even a little further because I don't
think we need to encourage drivers to configure AER registers (if they
do, they almost certainly don't pay attention to ownership via _OSC),
and if they don't use pci_enable_pcie_error_reporting(), they
shouldn't use pci_disable_pcie_error_reporting() either.
> ---
> Documentation/PCI/pcieaer-howto.rst | 18 ------------------
> 1 file changed, 18 deletions(-)
>
> diff --git a/Documentation/PCI/pcieaer-howto.rst b/Documentation/PCI/pcieaer-howto.rst
> index 0b36b9ebfa4b..a82802795a06 100644
> --- a/Documentation/PCI/pcieaer-howto.rst
> +++ b/Documentation/PCI/pcieaer-howto.rst
> @@ -135,15 +135,6 @@ hierarchy and links. These errors do not include any device specific
> errors because device specific errors will still get sent directly to
> the device driver.
>
> -Configure the AER capability structure
> ---------------------------------------
> -
> -AER aware drivers of PCI Express component need change the device
> -control registers to enable AER. They also could change AER registers,
> -including mask and severity registers. Helper function
> -pci_enable_pcie_error_reporting could be used to enable AER. See
> -section 3.3.
> -
> Provide callbacks
> -----------------
>
> @@ -214,15 +205,6 @@ to mmio_enabled.
>
> helper functions
> ----------------
> -::
> -
> - int pci_enable_pcie_error_reporting(struct pci_dev *dev);
> -
> -pci_enable_pcie_error_reporting enables the device to send error
> -messages to root port when an error is detected. Note that devices
> -don't enable the error reporting by default, so device drivers need
> -call this function to enable it.
> -
> ::
>
> int pci_disable_pcie_error_reporting(struct pci_dev *dev);
commit d7b36abe72db ("Remove AER Capability configuration")
Author: Bjorn Helgaas <bhelgaas@google.com>
Date: Mon Feb 13 11:53:42 2023 -0600
Remove AER Capability configuration
diff --git a/Documentation/PCI/pcieaer-howto.rst b/Documentation/PCI/pcieaer-howto.rst
index 0b36b9ebfa4b..c98a229ea9f5 100644
--- a/Documentation/PCI/pcieaer-howto.rst
+++ b/Documentation/PCI/pcieaer-howto.rst
@@ -96,8 +96,8 @@ Documentation/ABI/testing/sysfs-bus-pci-devices-aer_stats
Developer Guide
===============
-To enable AER aware support requires a software driver to configure
-the AER capability structure within its device and to provide callbacks.
+To enable AER aware support requires a software driver to provide
+callbacks.
To support AER better, developers need understand how AER does work
firstly.
@@ -135,15 +135,6 @@ hierarchy and links. These errors do not include any device specific
errors because device specific errors will still get sent directly to
the device driver.
-Configure the AER capability structure
---------------------------------------
-
-AER aware drivers of PCI Express component need change the device
-control registers to enable AER. They also could change AER registers,
-including mask and severity registers. Helper function
-pci_enable_pcie_error_reporting could be used to enable AER. See
-section 3.3.
-
Provide callbacks
-----------------
@@ -212,31 +203,6 @@ to reset the link. If error_detected returns PCI_ERS_RESULT_CAN_RECOVER
and reset_link returns PCI_ERS_RESULT_RECOVERED, the error handling goes
to mmio_enabled.
-helper functions
-----------------
-::
-
- int pci_enable_pcie_error_reporting(struct pci_dev *dev);
-
-pci_enable_pcie_error_reporting enables the device to send error
-messages to root port when an error is detected. Note that devices
-don't enable the error reporting by default, so device drivers need
-call this function to enable it.
-
-::
-
- int pci_disable_pcie_error_reporting(struct pci_dev *dev);
-
-pci_disable_pcie_error_reporting disables the device to send error
-messages to root port when an error is detected.
-
-::
-
- int pci_aer_clear_nonfatal_status(struct pci_dev *dev);`
-
-pci_aer_clear_nonfatal_status clears non-fatal errors in the uncorrectable
-error status register.
-
Frequent Asked Questions
------------------------
@@ -257,24 +223,6 @@ A:
Fatal error recovery will fail if the errors are reported by the
upstream ports who are attached by the service driver.
-Q:
- How does this infrastructure deal with driver that is not PCI
- Express aware?
-
-A:
- This infrastructure calls the error callback functions of the
- driver when an error happens. But if the driver is not aware of
- PCI Express, the device might not report its own errors to root
- port.
-
-Q:
- What modifications will that driver need to make it compatible
- with the PCI Express AER Root driver?
-
-A:
- It could call the helper functions to enable AER in devices and
- cleanup uncorrectable status register. Pls. refer to section 3.3.
-
Software error injection
========================
next prev parent reply other threads:[~2023-02-14 17:28 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-02-14 16:48 [PATCH] PCI/AER: Remove deprecated documentation for pcie_enable_pcie_error_reporting() Dave Jiang
2023-02-14 17:28 ` Bjorn Helgaas [this message]
2023-02-14 17:37 ` Dave Jiang
2023-02-15 14:02 ` Stefan Roese
2023-02-14 19:16 ` Sathyanarayanan Kuppuswamy
2023-02-14 17:37 ` Sathyanarayanan Kuppuswamy
2023-02-14 17:42 ` Dave Jiang
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=20230214172831.GA3046378@bhelgaas \
--to=helgaas@kernel.org \
--cc=Jonathan.Cameron@huawei.com \
--cc=bhelgaas@google.com \
--cc=dan.j.williams@intel.com \
--cc=dave.jiang@intel.com \
--cc=linux-pci@vger.kernel.org \
--cc=lukas@wunner.de \
--cc=sathyanarayanan.kuppuswamy@linux.intel.com \
--cc=sr@denx.de \
/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