summaryrefslogtreecommitdiffstats
path: root/arch/x86/kvm/x86.c
diff options
context:
space:
mode:
authorJan Kiszka2008-09-26 09:30:48 +0200
committerAvi Kivity2008-12-31 15:51:40 +0100
commit448fa4a9c5dbc6941dd19ed09692c588d815bb06 (patch)
treea1f3c6bb0027d047649dd6aefcad493c2f975be7 /arch/x86/kvm/x86.c
parentKVM: VMX: Support for NMI task gates (diff)
downloadkernel-qcow2-linux-448fa4a9c5dbc6941dd19ed09692c588d815bb06.tar.gz
kernel-qcow2-linux-448fa4a9c5dbc6941dd19ed09692c588d815bb06.tar.xz
kernel-qcow2-linux-448fa4a9c5dbc6941dd19ed09692c588d815bb06.zip
KVM: x86: Reset pending/inject NMI state on CPU reset
CPU reset invalidates pending or already injected NMIs, therefore reset the related state variables. Based on original patch by Gleb Natapov. Signed-off-by: Gleb Natapov <gleb@redhat.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/kvm/x86.c')
-rw-r--r--arch/x86/kvm/x86.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
index f1f8ff2f1fa2..1a71f6735593 100644
--- a/arch/x86/kvm/x86.c
+++ b/arch/x86/kvm/x86.c
@@ -3925,6 +3925,9 @@ void kvm_arch_vcpu_destroy(struct kvm_vcpu *vcpu)
int kvm_arch_vcpu_reset(struct kvm_vcpu *vcpu)
{
+ vcpu->arch.nmi_pending = false;
+ vcpu->arch.nmi_injected = false;
+
return kvm_x86_ops->vcpu_reset(vcpu);
}