diff options
author | Joerg Roedel <joerg.roedel@amd.com> | 2008-02-26 10:49:16 -0500 |
---|---|---|
committer | Avi Kivity <avi@qumranet.com> | 2008-04-27 04:53:27 -0400 |
commit | 71c4dfafc0932d92cc99c7e839d25174b0ce10a1 (patch) | |
tree | 991320ed3bce4cc2665721454c7f10a69fb98b1a /include/linux | |
parent | 3e4bb3ac9e0ada5df5f6729648d403ea9f071d10 (diff) |
KVM: detect if VCPU triple faults
In the current inject_page_fault path KVM only checks if there is another PF
pending and injects a DF then. But it has to check for a pending DF too to
detect a shutdown condition in the VCPU. If this is not detected the VCPU goes
to a PF -> DF -> PF loop when it should triple fault. This patch detects this
condition and handles it with an KVM_SHUTDOWN exit to userspace.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Avi Kivity <avi@qumranet.com>
Diffstat (limited to 'include/linux')
-rw-r--r-- | include/linux/kvm_host.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/kvm_host.h b/include/linux/kvm_host.h index 9750bb3c5a75..958e00371516 100644 --- a/include/linux/kvm_host.h +++ b/include/linux/kvm_host.h | |||
@@ -38,6 +38,7 @@ | |||
38 | #define KVM_REQ_MIGRATE_TIMER 1 | 38 | #define KVM_REQ_MIGRATE_TIMER 1 |
39 | #define KVM_REQ_REPORT_TPR_ACCESS 2 | 39 | #define KVM_REQ_REPORT_TPR_ACCESS 2 |
40 | #define KVM_REQ_MMU_RELOAD 3 | 40 | #define KVM_REQ_MMU_RELOAD 3 |
41 | #define KVM_REQ_TRIPLE_FAULT 4 | ||
41 | 42 | ||
42 | struct kvm_vcpu; | 43 | struct kvm_vcpu; |
43 | extern struct kmem_cache *kvm_vcpu_cache; | 44 | extern struct kmem_cache *kvm_vcpu_cache; |