diff options
author | Gautham R. Shenoy <ego@linux.vnet.ibm.com> | 2015-05-21 13:57:04 +0530 |
---|---|---|
committer | Paul Mackerras <paulus@samba.org> | 2015-09-21 09:05:12 +1000 |
commit | 7e022e717f54897e396504306d0c9b61452adf4e (patch) | |
tree | a48ea19323ae9f3868958a1dfd432a9af7111386 /arch | |
parent | 5fc3e64f941197d5b77abccbe0144b25c2c36f2f (diff) | |
download | op-kernel-dev-7e022e717f54897e396504306d0c9b61452adf4e.zip op-kernel-dev-7e022e717f54897e396504306d0c9b61452adf4e.tar.gz |
KVM: PPC: Book3S HV: Pass the correct trap argument to kvmhv_commence_exit
In guest_exit_cont we call kvmhv_commence_exit which expects the trap
number as the argument. However r3 doesn't contain the trap number at
this point and as a result we would be calling the function with a
spurious trap number.
Fix this by copying r12 into r3 before calling kvmhv_commence_exit as
r12 contains the trap number.
Cc: stable@vger.kernel.org # v4.1+
Fixes: eddb60fb1443
Signed-off-by: Gautham R. Shenoy <ego@linux.vnet.ibm.com>
Signed-off-by: Paul Mackerras <paulus@samba.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/kvm/book3s_hv_rmhandlers.S | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S b/arch/powerpc/kvm/book3s_hv_rmhandlers.S index 2273dca..b98889e 100644 --- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S +++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S @@ -1257,6 +1257,7 @@ mc_cont: bl kvmhv_accumulate_time #endif + mr r3, r12 /* Increment exit count, poke other threads to exit */ bl kvmhv_commence_exit nop |