Skip to content
Commit ee834849 authored by Alexander Graf's avatar Alexander Graf Committed by Michael Ellerman
Browse files

KVM: PPC: Book3S PR: Enable MSR_DR for switch_mmu_context()

Commit 863771a2 ("powerpc/32s: Convert switch_mmu_context() to C")
moved the switch_mmu_context() to C. While in principle a good idea, it
meant that the function now uses the stack. The stack is not accessible
from real mode though.

So to keep calling the function, let's turn on MSR_DR while we call it.
That way, all pointer references to the stack are handled virtually.

In addition, make sure to save/restore r12 on the stack, as it may get
clobbered by the C function.

Fixes: 863771a2

 ("powerpc/32s: Convert switch_mmu_context() to C")
Cc: stable@vger.kernel.org # v5.14+
Reported-by: default avatarMatt Evans <matt@ozlabs.org>
Signed-off-by: default avatarAlexander Graf <graf@amazon.com>
Signed-off-by: default avatarMichael Ellerman <mpe@ellerman.id.au>
Link: https://lore.kernel.org/r/20220510123717.24508-1-graf@amazon.com
parent 348c7134
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment