From: Guillaume T. <gui...@ex...> - 2008-01-10 14:23:11
|
On Thu, 10 Jan 2008 11:19:58 +0100 Guillaume Thouvenin <gui...@ex...> wrote: > I tried but it didn't catch any vmentry failures (and I know that > there is at least one during the test). I think that there is a vmentry failure because qemu-system-x86_64 crashes with following error: "exception 13 (33)" I interpreted this as a vmentry failure because 33 is the exit reason for a vmentry failure. The problem is that I don't find how to catch it in kvm. I thought that something like: static int kvm_handle_exit(struct kvm_run *kvm_run, struct kvm_vcpu *vcpu) { u32 exit_reason = vmcs_read32(VM_EXIT_REASON); struct vcpu_vmx *vmx = to_vmx(vcpu); u32 vectoring_info = vmx->idt_vectoring_info; if ( unlikely(exit_reason & VMX_EXIT_REASONS_FAILED_VMENTRY) ) // I should get it here no? ... } but exit_reason is never equal to VMX_EXIT_REASONS_FAILED_VMENTRY. Does it mean that what I interpret as a vmentry failure due to invalid guest state is in fact due to something else. Any hints to catch the vmentry failure due to invalid guest state in kvm? Thanks, Guillaume |