The comment for program interrupts triggered when using bookehv was
misleading. Update it to mention why MSR_GS indicates that we have
to inject an interrupt into the guest again, not emulate it.

Signed-off-by: Alexander Graf <ag...@suse.de>
---
 arch/powerpc/kvm/booke.c |   10 ++++++++--
 1 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/arch/powerpc/kvm/booke.c b/arch/powerpc/kvm/booke.c
index af02d9d..7df3f3a 100644
--- a/arch/powerpc/kvm/booke.c
+++ b/arch/powerpc/kvm/booke.c
@@ -685,8 +685,14 @@ int kvmppc_handle_exit(struct kvm_run *run, struct 
kvm_vcpu *vcpu,
 
        case BOOKE_INTERRUPT_PROGRAM:
                if (vcpu->arch.shared->msr & (MSR_PR | MSR_GS)) {
-                       /* Program traps generated by user-level software must 
be handled
-                        * by the guest kernel. */
+                       /*
+                        * Program traps generated by user-level software must
+                        * be handled by the guest kernel.
+                        *
+                        * In GS mode, hypervisor privileged instructions trap
+                        * on BOOKE_INTERRUPT_HV_PRIV, not here, so these are
+                        * actual program interrupts, handled by the guest.
+                        */
                        kvmppc_core_queue_program(vcpu, vcpu->arch.fault_esr);
                        r = RESUME_GUEST;
                        kvmppc_account_exit(vcpu, USR_PR_INST);
-- 
1.6.0.2

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to