Signed-off-by: Nicholas Piggin <npig...@gmail.com>
---
 arch/powerpc/kvm/book3s_hv_rmhandlers.S | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S 
b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
index 0e1f5bf168a1..9f0fdbae4b44 100644
--- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S
+++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S
@@ -888,15 +888,19 @@ ALT_FTR_SECTION_END_IFCLR(CPU_FTR_ARCH_300)
        cmpdi   r3, 512         /* 1 microsecond */
        blt     hdec_soon
 
-       /* For hash guest, clear out and reload the SLB */
        ld      r6, VCPU_KVM(r4)
        lbz     r0, KVM_RADIX(r6)
        cmpwi   r0, 0
        bne     9f
+
+       /* For hash guest, clear out and reload the SLB */
+BEGIN_MMU_FTR_SECTION
+       /* Radix host won't have populated the SLB, so no need to clear */
        li      r6, 0
        slbmte  r6, r6
        slbia
        ptesync
+END_MMU_FTR_SECTION_IFCLR(MMU_FTR_TYPE_RADIX)
 
        /* Load up guest SLB entries (N.B. slb_max will be 0 for radix) */
        lwz     r5,VCPU_SLB_MAX(r4)
-- 
2.23.0

Reply via email to