2019-01-09 22:37:08

by Christophe Leroy

[permalink] [raw]
Subject: [PATCH] powerpc/8xx: fix setting of pagetable for Abatron BDI debug tool.

Commit 8c8c10b90d88 ("powerpc/8xx: fix handling of early NULL pointer
dereference") moved the loading of r6 earlier in the code. As some
functions are called inbetween, r6 needs to be loaded again with the
address of swapper_pg_dir in order to set PTE pointers for
the Abatron BDI.

Fixes: 8c8c10b90d88 ("powerpc/8xx: fix handling of early NULL pointer dereference")
Signed-off-by: Christophe Leroy <[email protected]>
---
arch/powerpc/kernel/head_8xx.S | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/kernel/head_8xx.S b/arch/powerpc/kernel/head_8xx.S
index aea5f367e4fe..ab0e6f1c98b0 100644
--- a/arch/powerpc/kernel/head_8xx.S
+++ b/arch/powerpc/kernel/head_8xx.S
@@ -885,11 +885,12 @@ start_here:

/* set up the PTE pointers for the Abatron bdiGDB.
*/
- tovirt(r6,r6)
lis r5, abatron_pteptrs@h
ori r5, r5, abatron_pteptrs@l
stw r5, 0xf0(0) /* Must match your Abatron config file */
tophys(r5,r5)
+ lis r6, swapper_pg_dir@h
+ ori r6, r6, swapper_pg_dir@l
stw r6, 0(r5)

/* Now turn on the MMU for real! */
--
2.13.3



2019-01-14 10:13:46

by Michael Ellerman

[permalink] [raw]
Subject: Re: powerpc/8xx: fix setting of pagetable for Abatron BDI debug tool.

On Wed, 2019-01-09 at 20:30:07 UTC, Christophe Leroy wrote:
> Commit 8c8c10b90d88 ("powerpc/8xx: fix handling of early NULL pointer
> dereference") moved the loading of r6 earlier in the code. As some
> functions are called inbetween, r6 needs to be loaded again with the
> address of swapper_pg_dir in order to set PTE pointers for
> the Abatron BDI.
>
> Fixes: 8c8c10b90d88 ("powerpc/8xx: fix handling of early NULL pointer dereference")
> Signed-off-by: Christophe Leroy <[email protected]>

Applied to powerpc fixes, thanks.

https://git.kernel.org/powerpc/c/fb0bdec51a4901b7dd088de0a1e365e1

cheers