aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorAvi Kivity <avi@redhat.com>2011-09-20 06:43:14 -0400
committerAvi Kivity <avi@redhat.com>2011-09-25 12:52:59 -0400
commit7460fb4a340033107530df19e7e125bd0969bfb2 (patch)
tree02f2aedd48af0a2e316b28d6a5b21a7a96442ac6 /include
parent1cd196ea42c526549ded4fd29809c3fdaa4a7f41 (diff)
KVM: Fix simultaneous NMIs
If simultaneous NMIs happen, we're supposed to queue the second and next (collapsing them), but currently we sometimes collapse the second into the first. Fix by using a counter for pending NMIs instead of a bool; since the counter limit depends on whether the processor is currently in an NMI handler, which can only be checked in vcpu context (via the NMI mask), we add a new KVM_REQ_NMI to request recalculation of the counter. Signed-off-by: Avi Kivity <avi@redhat.com> Signed-off-by: Marcelo Tosatti <mtosatti@redhat.com>
Diffstat (limited to 'include')
-rw-r--r--include/linux/kvm_host.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h
index 2a414f66af28..d52623199978 100644
--- a/include/linux/kvm_host.h
+++ b/include/linux/kvm_host.h
@@ -49,6 +49,7 @@
49#define KVM_REQ_EVENT 11 49#define KVM_REQ_EVENT 11
50#define KVM_REQ_APF_HALT 12 50#define KVM_REQ_APF_HALT 12
51#define KVM_REQ_STEAL_UPDATE 13 51#define KVM_REQ_STEAL_UPDATE 13
52#define KVM_REQ_NMI 14
52 53
53#define KVM_USERSPACE_IRQ_SOURCE_ID 0 54#define KVM_USERSPACE_IRQ_SOURCE_ID 0
54 55