KVM: emulate: POP SS triggers a MOV SS shadow too
authorPaolo Bonzini <pbonzini@redhat.com>
Thu, 5 Jun 2014 15:29:34 +0000 (17:29 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Wed, 18 Jun 2014 15:46:20 +0000 (17:46 +0200)
We did not do that when interruptibility was added to the emulator,
because at the time pop to segment was not implemented.  Now it is,
add it.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
arch/x86/kvm/emulate.c

index 9b5d97db7631393f5aa645eb55fbf0ff0576135f..bc670675223de3329a72f33a1c5a889bf149e65d 100644 (file)
@@ -1762,6 +1762,9 @@ static int em_pop_sreg(struct x86_emulate_ctxt *ctxt)
        if (rc != X86EMUL_CONTINUE)
                return rc;
 
+       if (ctxt->modrm_reg == VCPU_SREG_SS)
+               ctxt->interruptibility = KVM_X86_SHADOW_INT_MOV_SS;
+
        rc = load_segment_descriptor(ctxt, (u16)selector, seg);
        return rc;
 }