From b5d637dd7f42e6a6eaa4ca9018d2fea1a85d0c22 Mon Sep 17 00:00:00 2001 From: Avi Kivity Date: Mon, 22 Jan 2007 20:40:39 -0800 Subject: [PATCH] --- yaml --- r: 45715 b: refs/heads/master c: cccf748b810832cfab4dbb3ed4c7cf1a1ee35ad2 h: refs/heads/master i: 45713: 80e1a75cdd31248da32c58f158fd8f54a8d4d670 45711: 16e0982b8a9dbc67d9d9aa7f2a7ffae97149479b v: v3 --- [refs] | 2 +- trunk/drivers/kvm/svm.c | 3 ++- trunk/drivers/kvm/vmx.c | 3 ++- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/[refs] b/[refs] index e490f4ef28c6..8676000cf815 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 084384754ebe6636f9e5554ad30b3143b4a26c84 +refs/heads/master: cccf748b810832cfab4dbb3ed4c7cf1a1ee35ad2 diff --git a/trunk/drivers/kvm/svm.c b/trunk/drivers/kvm/svm.c index 714f6a7841cd..7397bfbbcb1c 100644 --- a/trunk/drivers/kvm/svm.c +++ b/trunk/drivers/kvm/svm.c @@ -1407,7 +1407,8 @@ static int svm_vcpu_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run) int r; again: - do_interrupt_requests(vcpu, kvm_run); + if (!vcpu->mmio_read_completed) + do_interrupt_requests(vcpu, kvm_run); clgi(); diff --git a/trunk/drivers/kvm/vmx.c b/trunk/drivers/kvm/vmx.c index 0aa2659f6ae5..27f2751c3baa 100644 --- a/trunk/drivers/kvm/vmx.c +++ b/trunk/drivers/kvm/vmx.c @@ -1717,7 +1717,8 @@ static int vmx_vcpu_run(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run) vmcs_writel(HOST_GS_BASE, segment_base(gs_sel)); #endif - do_interrupt_requests(vcpu, kvm_run); + if (!vcpu->mmio_read_completed) + do_interrupt_requests(vcpu, kvm_run); if (vcpu->guest_debug.enabled) kvm_guest_debug_pre(vcpu);