The previous code added wrong TLBs and causes machine check errors.

Signed-off-by: Ralph E. Bellofatto <[email protected]>
Signed-off-by: Benjamin Krill <[email protected]>
---
 arch/powerpc/mm/tlb_low_64e.S | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/mm/tlb_low_64e.S b/arch/powerpc/mm/tlb_low_64e.S
index c95eb32..6bf5050 100644
--- a/arch/powerpc/mm/tlb_low_64e.S
+++ b/arch/powerpc/mm/tlb_low_64e.S
@@ -1091,7 +1091,8 @@ tlb_load_linear:
        ld      r11,PACATOC(r13)
        ld      r11,linear_map_top@got(r11)
        ld      r10,0(r11)
-       cmpld   cr0,r10,r16
+       tovirt(10,10)
+       cmpld   cr0,r16,r10
        bge     tlb_load_linear_fault
 
        /* MAS1 need whole new setup. */
-- 
1.8.5.3

_______________________________________________
Linuxppc-dev mailing list
[email protected]
https://lists.ozlabs.org/listinfo/linuxppc-dev

Reply via email to