[PATCH] Revert "powerpc/eeh: Don't unfreeze PHB PE after reset"

Andrew Donnellan andrew.donnellan at au1.ibm.com
Thu Dec 3 18:16:12 AEDT 2015


This reverts commit 527d10ef3a315d3cb9dc098dacd61889a6c26439.

The reverted commit breaks cxlflash devices following an EEH reset.
Attempting to load the cxlflash driver after a reset results in a call to
pci_read_vpd() returning -ENODEV, causing driver initialisation to fail.

At this stage, we don't fully understand why this is happening, and we
also haven't tested whether this occurs for other cxl devices. In the
meantime, though, revert the commit, especially as it was intended to be a
non-functional change.

Signed-off-by: Andrew Donnellan <andrew.donnellan at au1.ibm.com>

---

This issue was identified by bisection following breakage observed in
4.4-rc1. I'm continuing to investigate the root cause (and testing on cxl
devices other than cxlflash), as the commit in question shouldn't have
caused problems.
---
 arch/powerpc/kernel/eeh_driver.c | 14 ++++----------
 1 file changed, 4 insertions(+), 10 deletions(-)

diff --git a/arch/powerpc/kernel/eeh_driver.c b/arch/powerpc/kernel/eeh_driver.c
index 80dfe89..8d14feb 100644
--- a/arch/powerpc/kernel/eeh_driver.c
+++ b/arch/powerpc/kernel/eeh_driver.c
@@ -590,16 +590,10 @@ static int eeh_reset_device(struct eeh_pe *pe, struct pci_bus *bus)
 	eeh_ops->configure_bridge(pe);
 	eeh_pe_restore_bars(pe);
 
-	/*
-	 * If it's PHB PE, the frozen state on all available PEs should have
-	 * been cleared by the PHB reset. Otherwise, we unfreeze the PE and its
-	 * child PEs because they might be in frozen state.
-	 */
-	if (!(pe->type & EEH_PE_PHB)) {
-		rc = eeh_clear_pe_frozen_state(pe, false);
-		if (rc)
-			return rc;
-	}
+	/* Clear frozen state */
+	rc = eeh_clear_pe_frozen_state(pe, false);
+	if (rc)
+		return rc;
 
 	/* Give the system 5 seconds to finish running the user-space
 	 * hotplug shutdown scripts, e.g. ifdown for ethernet.  Yes,
-- 
Andrew Donnellan              Software Engineer, OzLabs
andrew.donnellan at au1.ibm.com  Australia Development Lab, Canberra
+61 2 6201 8874 (work)        IBM Australia Limited



More information about the Linuxppc-dev mailing list