diff options
author | Joerg Roedel <joerg.roedel@amd.com> | 2010-09-10 11:31:04 -0400 |
---|---|---|
committer | Avi Kivity <avi@redhat.com> | 2010-10-24 04:52:46 -0400 |
commit | 55c5e464fcc28ee763d40561abf2b259131dd703 (patch) | |
tree | a285f4cbad347bb3adcae3c66d92d4dca32ed006 /arch/x86/kvm | |
parent | 4b16184c1ccafa4b0c188c622ea532fb90e6f5b0 (diff) |
KVM: SVM: Expect two more candiates for exit_int_info
This patch adds INTR and NMI intercepts to the list of
expected intercepts with an exit_int_info set. While this
can't happen on bare metal it is architectural legal and may
happen with KVMs SVM emulation.
Signed-off-by: Joerg Roedel <joerg.roedel@amd.com>
Signed-off-by: Avi Kivity <avi@redhat.com>
Diffstat (limited to 'arch/x86/kvm')
-rw-r--r-- | arch/x86/kvm/svm.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/x86/kvm/svm.c b/arch/x86/kvm/svm.c index 3184772dedfe..de1930ee2abb 100644 --- a/arch/x86/kvm/svm.c +++ b/arch/x86/kvm/svm.c | |||
@@ -2991,7 +2991,8 @@ static int handle_exit(struct kvm_vcpu *vcpu) | |||
2991 | 2991 | ||
2992 | if (is_external_interrupt(svm->vmcb->control.exit_int_info) && | 2992 | if (is_external_interrupt(svm->vmcb->control.exit_int_info) && |
2993 | exit_code != SVM_EXIT_EXCP_BASE + PF_VECTOR && | 2993 | exit_code != SVM_EXIT_EXCP_BASE + PF_VECTOR && |
2994 | exit_code != SVM_EXIT_NPF && exit_code != SVM_EXIT_TASK_SWITCH) | 2994 | exit_code != SVM_EXIT_NPF && exit_code != SVM_EXIT_TASK_SWITCH && |
2995 | exit_code != SVM_EXIT_INTR && exit_code != SVM_EXIT_NMI) | ||
2995 | printk(KERN_ERR "%s: unexpected exit_ini_info 0x%x " | 2996 | printk(KERN_ERR "%s: unexpected exit_ini_info 0x%x " |
2996 | "exit_code 0x%x\n", | 2997 | "exit_code 0x%x\n", |
2997 | __func__, svm->vmcb->control.exit_int_info, | 2998 | __func__, svm->vmcb->control.exit_int_info, |