summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMihai Caraman2012-04-16 06:08:53 +0200
committerAlexander Graf2012-05-06 16:19:11 +0200
commit4444aa5f78eff73a353c8c4784cda2de74dea54b (patch)
treeb86dd0c1a431432b4b215e686cd0d70368ca3330
parentKVM: PPC: Book3S: Enable IRQs during exit handling (diff)
downloadkernel-qcow2-linux-4444aa5f78eff73a353c8c4784cda2de74dea54b.tar.gz
kernel-qcow2-linux-4444aa5f78eff73a353c8c4784cda2de74dea54b.tar.xz
kernel-qcow2-linux-4444aa5f78eff73a353c8c4784cda2de74dea54b.zip
KVM: PPC: bookehv: Fix r8/r13 storing in level exception handler
Guest r8 register is held in the scratch register and stored correctly, so remove the instruction that clobbers it. Guest r13 was missing from vcpu, store it there. Signed-off-by: Mihai Caraman <mihai.caraman@freescale.com> Signed-off-by: Alexander Graf <agraf@suse.de>
-rw-r--r--arch/powerpc/kvm/bookehv_interrupts.S2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/kvm/bookehv_interrupts.S b/arch/powerpc/kvm/bookehv_interrupts.S
index 06750cc1050b..6048a00515d7 100644
--- a/arch/powerpc/kvm/bookehv_interrupts.S
+++ b/arch/powerpc/kvm/bookehv_interrupts.S
@@ -252,10 +252,10 @@ _GLOBAL(kvmppc_handler_\intno\()_\srr1)
mfspr r6, \srr1
PPC_LL r4, GPR11(r8)
PPC_STL r7, VCPU_GPR(r7)(r11)
- PPC_STL r8, VCPU_GPR(r8)(r11)
PPC_STL r3, VCPU_GPR(r10)(r11)
mfctr r7
PPC_STL r12, VCPU_GPR(r12)(r11)
+ PPC_STL r13, VCPU_GPR(r13)(r11)
PPC_STL r4, VCPU_GPR(r11)(r11)
PPC_STL r7, VCPU_CTR(r11)
mr r4, r11