summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorGautham R. Shenoy <ego@linux.vnet.ibm.com>2015-05-21 13:57:04 +0530
committerPaul Mackerras <paulus@samba.org>2015-09-21 09:05:12 +1000
commit7e022e717f54897e396504306d0c9b61452adf4e (patch)
treea48ea19323ae9f3868958a1dfd432a9af7111386 /arch
parent5fc3e64f941197d5b77abccbe0144b25c2c36f2f (diff)
downloadlinux-7e022e717f54897e396504306d0c9b61452adf4e.tar.gz
linux-7e022e717f54897e396504306d0c9b61452adf4e.tar.bz2
linux-7e022e717f54897e396504306d0c9b61452adf4e.zip
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.S1
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 2273dcacef39..b98889e9851d 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