All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v3 0/6] PCI/ACPI: Fix firmware first error recovery with root port in reset
@ 2013-06-06 18:10 Betty Dall
  2013-06-06 18:10 ` [PATCH v3 1/6] PCI/AER: Don't parse HEST table for non-PCIe devices Betty Dall
                   ` (6 more replies)
  0 siblings, 7 replies; 11+ messages in thread
From: Betty Dall @ 2013-06-06 18:10 UTC (permalink / raw)
  To: rjw, bhelgaas, gong.chen, greg.pearson
  Cc: ying.huang, linux-acpi, linux-kernel, linux-pci, Betty Dall

This patch set fixes a bug on platforms that use firmware first AER.
Firmware can leave the root port in Secondary Bus Reset (SBR) and
communicate this to the OS through the "reset" bit in the flags field
of the HEST table and associated CPER records. Firmware wants to do this
so that the error is contained and the hardware is in a known state.

Without these patches, the root port stays in SBR and the device drivers
cannot recover. These patches recognize when the firmware first root port
is in SBR and bring the root port out of SBR so the devices under the root
port can recover.

The changes have been tested on systems with firmware first that set the
"reset" bit by injecting various hardware errors. The errors successfully
recover.

Changes since v1:
Fixed a typo in the comment of patch 2.
Removed incorrect setting of reset bit in patch 3.

Changes since v2: 
The v2 patch 1/3 was re-written by Bjorn Helgaas and is now patches 1/6
through 3/6.
The v2 patch 2/3 is now 5/6 and changed to directly use the AER_FATAL define
and introduced patch 4/6 to move the defines to a public header file.
The v2 patch 3/3 is now 6/6 and uses the same default reset link function for
both Downstream Ports and Root Ports.

Signed-off-by: Betty Dall <betty.dall@hp.com>
---
Betty Dall (6):
  PCI/AER: Don't parse HEST table for non-PCIe devices
  PCI/AER: Factor out HEST device type matching
  PCI/AER: Set dev->__aer_firmware_first only for matching devices
  PCI/ACPI: Move AER severity defines to aer.h
  ACPI/APEI: Force fatal AER severity when bus has been reset
  PCI/AER: Provide reset_link for firmware first root port
---
 drivers/acpi/apei/ghes.c           |   10 +++++++
 drivers/pci/pcie/aer/aerdrv.h      |    4 ---
 drivers/pci/pcie/aer/aerdrv_acpi.c |   47 ++++++++++++++++++-----------------
 drivers/pci/pcie/aer/aerdrv_core.c |   17 +++++++------
 include/linux/aer.h                |   16 +++++++----
 5 files changed, 53 insertions(+), 41 deletions(-)


^ permalink raw reply	[flat|nested] 11+ messages in thread

end of thread, other threads:[~2013-06-06 21:04 UTC | newest]

Thread overview: 11+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-06-06 18:10 [PATCH v3 0/6] PCI/ACPI: Fix firmware first error recovery with root port in reset Betty Dall
2013-06-06 18:10 ` [PATCH v3 1/6] PCI/AER: Don't parse HEST table for non-PCIe devices Betty Dall
2013-06-06 18:10 ` [PATCH v3 2/6] PCI/AER: Factor out HEST device type matching Betty Dall
2013-06-06 18:10 ` [PATCH v3 3/6] PCI/AER: Set dev->__aer_firmware_first only for matching devices Betty Dall
2013-06-06 18:10 ` [PATCH v2 4/6] PCI/ACPI: Move AER severity defines to aer.h Betty Dall
2013-06-06 18:23   ` Joe Perches
2013-06-06 19:28     ` Bjorn Helgaas
2013-06-06 20:19       ` Rafael J. Wysocki
2013-06-06 18:10 ` [PATCH v3 5/6] ACPI/APEI: Force fatal AER severity when bus has been reset Betty Dall
2013-06-06 18:10 ` [PATCH v3 6/6] PCI/AER: Provide reset_link for firmware first root port Betty Dall
2013-06-06 21:04 ` [PATCH v3 0/6] PCI/ACPI: Fix firmware first error recovery with root port in reset Bjorn Helgaas

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.