From: Betty Dall <betty.dall@hp.com>
To: rjw@sisk.pl, bhelgaas@google.com
Cc: ying.huang@intel.com, linux-acpi@vger.kernel.org,
linux-kernel@vger.kernel.org, linux-pci@vger.kernel.org,
Betty Dall <betty.dall@hp.com>
Subject: [PATCH v2 2/3] ACPI/APEI: Force fatal AER severity when bus has been reset
Date: Thu, 30 May 2013 08:39:28 -0600 [thread overview]
Message-ID: <1369924769-17183-3-git-send-email-betty.dall@hp.com> (raw)
In-Reply-To: <1369924769-17183-1-git-send-email-betty.dall@hp.com>
The CPER error record has a reset bit that indicates that the platform
has reset the bus. The reset bit can be set for any severity error
including recoverable. From the AER code path's perspective,
any error is fatal if the bus has been reset. This patch upgrades the
severity of the AER recovery to AER_FATAL whenever the CPER error record
indicates that the bus has been reset.
Changes since v1:
Fixed a typo in comment.
Signed-off-by: Betty Dall <betty.dall@hp.com>
---
drivers/acpi/apei/ghes.c | 21 ++++++++++++++++++++-
1 files changed, 20 insertions(+), 1 deletions(-)
diff --git a/drivers/acpi/apei/ghes.c b/drivers/acpi/apei/ghes.c
index d668a8a..1c67d5a 100644
--- a/drivers/acpi/apei/ghes.c
+++ b/drivers/acpi/apei/ghes.c
@@ -451,7 +451,26 @@ static void ghes_do_proc(struct ghes *ghes,
int aer_severity;
devfn = PCI_DEVFN(pcie_err->device_id.device,
pcie_err->device_id.function);
- aer_severity = cper_severity_to_aer(sev);
+ /*
+ * Some Firmware First implementations
+ * put the device in SBR to contain
+ * the error. This is indicated by the
+ * CPER Section Descriptor Flags reset
+ * bit which means the component must
+ * be re-initialized or re-enabled
+ * prior to use. Promoting the AER
+ * serverity to FATAL will cause the
+ * AER code to link_reset and allow
+ * drivers to reprogram their cards.
+ */
+ if (gdata->flags & CPER_SEC_RESET)
+ aer_severity = cper_severity_to_aer(
+ CPER_SEV_FATAL);
+ else
+ aer_severity =
+ cper_severity_to_aer(sev);
+
+
aer_recover_queue(pcie_err->device_id.segment,
pcie_err->device_id.bus,
devfn, aer_severity);
next prev parent reply other threads:[~2013-05-30 14:46 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-05-30 14:39 [PATCH v2 0/3] PCI/ACPI: Fix firmware first error recovery with root port in reset Betty Dall
2013-05-30 14:39 ` [PATCH v2 1/3] PCI/AER: Fix incorrect return from aer_hest_parse() Betty Dall
2013-06-02 0:38 ` Bjorn Helgaas
2013-06-03 21:18 ` Betty Dall
2013-06-04 17:39 ` Bjorn Helgaas
2013-06-04 7:42 ` Chen Gong
2013-06-04 13:13 ` Bjorn Helgaas
2013-06-05 2:48 ` Chen Gong
2013-06-05 13:38 ` Bjorn Helgaas
2013-05-30 14:39 ` Betty Dall [this message]
2013-06-04 7:53 ` [PATCH v2 2/3] ACPI/APEI: Force fatal AER severity when bus has been reset Chen Gong
2013-06-04 16:20 ` Betty Dall
2013-06-04 17:54 ` Bjorn Helgaas
2013-06-05 1:56 ` Chen Gong
2013-05-30 14:39 ` [PATCH v2 3/3] PCI/AER: Provide reset_link for firmware first root port Betty Dall
2013-06-04 8:36 ` Chen Gong
2013-06-04 18:31 ` Bjorn Helgaas
2013-06-04 21:38 ` Betty Dall
2013-06-04 22:15 ` Bjorn Helgaas
2013-06-05 1:56 ` Chen Gong
2013-06-05 13:22 ` Betty Dall
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=1369924769-17183-3-git-send-email-betty.dall@hp.com \
--to=betty.dall@hp.com \
--cc=bhelgaas@google.com \
--cc=linux-acpi@vger.kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-pci@vger.kernel.org \
--cc=rjw@sisk.pl \
--cc=ying.huang@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