aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kvm/x86.c
diff options
context:
space:
mode:
authorGleb Natapov <gleb@redhat.com>2009-05-11 06:35:53 -0400
committerAvi Kivity <avi@redhat.com>2009-06-10 04:48:59 -0400
commit36752c9b91f75aa3ff0f214a89f13d806cb2f61f (patch)
tree0df1adb2be6663e13370f9148506073294b297c9 /arch/x86/kvm/x86.c
parent44c11430b52cbad0a467bc023a802d122dfd285c (diff)
KVM: Do not migrate pending software interrupts.
INTn will be re-executed after migration. If we wanted to migrate pending software interrupt we would need to migrate interrupt type and instruction length too, but we do not have all required info on SVM, so SVM->VMX migration would need to re-execute INTn anyway. To make it simple never migrate pending soft interrupt. Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/kvm/x86.c')
-rw-r--r--arch/x86/kvm/x86.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index 199426cc1d0e..beb806b03a2e 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -3579,7 +3579,7 @@ int kvm_arch_vcpu_ioctl_get_sregs(struct kvm_vcpu *vcpu,
3579 3579
3580 memset(sregs->interrupt_bitmap, 0, sizeof sregs->interrupt_bitmap); 3580 memset(sregs->interrupt_bitmap, 0, sizeof sregs->interrupt_bitmap);
3581 3581
3582 if (vcpu->arch.interrupt.pending) 3582 if (vcpu->arch.interrupt.pending && !vcpu->arch.interrupt.soft)
3583 set_bit(vcpu->arch.interrupt.nr, 3583 set_bit(vcpu->arch.interrupt.nr,
3584 (unsigned long *)sregs->interrupt_bitmap); 3584 (unsigned long *)sregs->interrupt_bitmap);
3585 3585