KVM: PPC: Move kvm_guest_enter call into generic code
We need to call kvm_guest_enter in booke and book3s, so move its
call to generic code.
Signed-off-by: Alexander Graf <agraf@suse.de>
diff --git a/arch/powerpc/kvm/book3s_pr.c b/arch/powerpc/kvm/book3s_pr.c
index e737db8..1ff0d6c 100644
--- a/arch/powerpc/kvm/book3s_pr.c
+++ b/arch/powerpc/kvm/book3s_pr.c
@@ -867,8 +867,6 @@
run->exit_reason = KVM_EXIT_INTR;
r = -EINTR;
} else {
- /* Going back to guest */
- kvm_guest_enter();
kvmppc_lazy_ee_enable();
}
}
diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c
index 2bd190c..5e8dc19 100644
--- a/arch/powerpc/kvm/booke.c
+++ b/arch/powerpc/kvm/booke.c
@@ -954,8 +954,6 @@
r = (-EINTR << 2) | RESUME_HOST | (r & RESUME_FLAG_NV);
kvmppc_account_exit(vcpu, SIGNAL_EXITS);
} else {
- /* Going back to guest */
- kvm_guest_enter();
kvmppc_lazy_ee_enable();
}
}
diff --git a/arch/powerpc/kvm/powerpc.c b/arch/powerpc/kvm/powerpc.c
index 2665499..6646574 100644
--- a/arch/powerpc/kvm/powerpc.c
+++ b/arch/powerpc/kvm/powerpc.c
@@ -101,12 +101,15 @@
/* Got an interrupt in between, try again */
local_irq_enable();
local_irq_disable();
+ kvm_guest_exit();
continue;
}
trace_hardirqs_on();
#endif
+ kvm_guest_enter();
+
/* Going into guest context! Yay! */
vcpu->mode = IN_GUEST_MODE;
smp_wmb();