Hi, everyone,
I'm reading kvm-5 source code (very old but good enough to learn svm). Inside 
svm.c, there is a function called handle_exit:
static int handle_exit(struct kvm_vcpu *vcpu, struct kvm_run *kvm_run){    u32 
exit_code = vcpu->svm->vmcb->control.exit_code;
    kvm_run->exit_type = KVM_EXIT_TYPE_VM_EXIT;
    if (is_external_interrupt(vcpu->svm->vmcb->control.exit_int_info) &&        
exit_code != SVM_EXIT_EXCP_BASE + PF_VECTOR)        printk(KERN_ERR "%s: 
unexpected exit_ini_info 0x%x " ******    ****}
Here I have a question, the first check is to see whether the exit_code, which 
is actually the interrupt vector number, is page fault. But page fault should 
be an exception, instead of an external interrupt. Why the condition is 
is_external_interrupt && exit_code is not page_fault ?
According to the AMD SVM Reference Manual, the exit_int_info type should be 3 
(Exception), am I wrong ?
Thanks very much.
Nathan
                                          --
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to