[PATCH 1/2] powerpc/eeh: Create PHB PEs after EEH is initialized

Subsystems: linux for powerpc (32-bit and 64-bit), pci enhanced error handling (eeh) for powerpc, the rest

STALE3274d

7 messages, 4 authors, 2017-09-22 · open the first message on its own page

[PATCH 1/2] powerpc/eeh: Create PHB PEs after EEH is initialized

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2017-09-07 06:35:56

Otherwise we end up not yet having computed the right
diag data size on powernv where EEH initialization
is delayed, thus causing memory corruption later on
when calling OPAL.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
---
 arch/powerpc/kernel/eeh.c     |  4 ++++
 arch/powerpc/kernel/eeh_dev.c | 18 ------------------
 2 files changed, 4 insertions(+), 18 deletions(-)
diff --git a/arch/powerpc/kernel/eeh.c b/arch/powerpc/kernel/eeh.c
index 63992b2d8e15..f27eecd5ec7f 100644
--- a/arch/powerpc/kernel/eeh.c
+++ b/arch/powerpc/kernel/eeh.c
@@ -1018,6 +1018,10 @@ int eeh_init(void)
 	} else if ((ret = eeh_ops->init()))
 		return ret;
 
+	/* Initialize PHB PEs */
+	list_for_each_entry_safe(hose, tmp, &hose_list, list_node)
+		eeh_dev_phb_init_dynamic(hose);
+
 	/* Initialize EEH event */
 	ret = eeh_event_init();
 	if (ret)
diff --git a/arch/powerpc/kernel/eeh_dev.c b/arch/powerpc/kernel/eeh_dev.c
index d6b2ca70d14d..0820b73288c0 100644
--- a/arch/powerpc/kernel/eeh_dev.c
+++ b/arch/powerpc/kernel/eeh_dev.c
@@ -83,21 +83,3 @@ void eeh_dev_phb_init_dynamic(struct pci_controller *phb)
 	/* EEH PE for PHB */
 	eeh_phb_pe_create(phb);
 }
-
-/**
- * eeh_dev_phb_init - Create EEH devices for devices included in existing PHBs
- *
- * Scan all the existing PHBs and create EEH devices for their OF
- * nodes and their children OF nodes
- */
-static int __init eeh_dev_phb_init(void)
-{
-	struct pci_controller *phb, *tmp;
-
-	list_for_each_entry_safe(phb, tmp, &hose_list, list_node)
-		eeh_dev_phb_init_dynamic(phb);
-
-	return 0;
-}
-
-core_initcall(eeh_dev_phb_init);

Re: [PATCH 1/2] powerpc/eeh: Create PHB PEs after EEH is initialized

From: Russell Currey <hidden>
Date: 2017-09-14 01:18:20

On Thu, 2017-09-07 at 16:35 +1000, Benjamin Herrenschmidt wrote:
Otherwise we end up not yet having computed the right
diag data size on powernv where EEH initialization
is delayed, thus causing memory corruption later on
when calling OPAL.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Russell Currey <redacted>

Re: [PATCH 1/2] powerpc/eeh: Create PHB PEs after EEH is initialized

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2017-09-20 10:59:09

Benjamin Herrenschmidt [off-list ref] writes:
Otherwise we end up not yet having computed the right
diag data size on powernv where EEH initialization
is delayed, thus causing memory corruption later on
when calling OPAL.
When did this break? Do we have a commit we can tag with Fixes: ?
Stable?

I assume we want to merge this ASAP as a fix, I think I can safely take
this without patch 2?

cheers

Re: [PATCH 1/2] powerpc/eeh: Create PHB PEs after EEH is initialized

From: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Date: 2017-09-20 13:00:13

On Wed, 2017-09-20 at 20:59 +1000, Michael Ellerman wrote:
Benjamin Herrenschmidt [off-list ref] writes:
quoted
Otherwise we end up not yet having computed the right
diag data size on powernv where EEH initialization
is delayed, thus causing memory corruption later on
when calling OPAL.
When did this break? Do we have a commit we can tag with Fixes: ?
Stable?

I assume we want to merge this ASAP as a fix, I think I can safely take
this without patch 2?
Russell, can you help Michael with that ? I don't even remember what's
in patch 2 :)

Cheers,
Ben.

Re: [PATCH 1/2] powerpc/eeh: Create PHB PEs after EEH is initialized

From: Russell Currey <hidden>
Date: 2017-09-21 02:20:09

On Wed, 2017-09-20 at 20:59 +1000, Michael Ellerman wrote:
Benjamin Herrenschmidt [off-list ref] writes:
quoted
Otherwise we end up not yet having computed the right
diag data size on powernv where EEH initialization
is delayed, thus causing memory corruption later on
when calling OPAL.
When did this break? Do we have a commit we can tag with Fixes: ?
Stable?

I assume we want to merge this ASAP as a fix, I think I can safely take
this without patch 2?

cheers
Yes it should be merged ASAP as a fix, and fixes
5cb1f8fdddb7475f38ea9fba48da17c002eec90b.

Re: [PATCH 1/2] powerpc/eeh: Create PHB PEs after EEH is initialized

From: Michael Ellerman <mpe@ellerman.id.au>
Date: 2017-09-21 04:57:50

Russell Currey [off-list ref] writes:
On Wed, 2017-09-20 at 20:59 +1000, Michael Ellerman wrote:
quoted
Benjamin Herrenschmidt [off-list ref] writes:
quoted
Otherwise we end up not yet having computed the right
diag data size on powernv where EEH initialization
is delayed, thus causing memory corruption later on
when calling OPAL.
When did this break? Do we have a commit we can tag with Fixes: ?
Stable?

I assume we want to merge this ASAP as a fix, I think I can safely take
this without patch 2?

cheers
Yes it should be merged ASAP as a fix, and fixes
5cb1f8fdddb7475f38ea9fba48da17c002eec90b.
Thanks. I've put patch 1 in fixes-test.

cheers

Re: [1/2] powerpc/eeh: Create PHB PEs after EEH is initialized

From: Michael Ellerman <hidden>
Date: 2017-09-22 01:03:33

On Thu, 2017-09-07 at 06:35:40 UTC, Benjamin Herrenschmidt wrote:
Otherwise we end up not yet having computed the right
diag data size on powernv where EEH initialization
is delayed, thus causing memory corruption later on
when calling OPAL.

Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Acked-by: Russell Currey <redacted>
Patch 1 applied to powerpc fixes, thanks.

https://git.kernel.org/powerpc/c/3e77adeea3c5393c9b624832f65441

cheers
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help