diff options
author | grehan <grehan@FreeBSD.org> | 2012-04-28 16:28:00 +0000 |
---|---|---|
committer | grehan <grehan@FreeBSD.org> | 2012-04-28 16:28:00 +0000 |
commit | 9f0c999f8126597eb572b80056df88335dbd0070 (patch) | |
tree | e25fe0456b877e9c40defdc19a863563208d18de /sys/amd64/vmm/intel/vmx.c | |
parent | 94d2b7f64912987093f1a98573737a32e4e5d8d1 (diff) | |
download | FreeBSD-src-9f0c999f8126597eb572b80056df88335dbd0070.zip FreeBSD-src-9f0c999f8126597eb572b80056df88335dbd0070.tar.gz |
MSI-x interrupt support for PCI pass-thru devices.
Includes instruction emulation for memory r/w access. This
opens the door for io-apic, local apic, hpet timer, and
legacy device emulation.
Submitted by: ryan dot berryhill at sandvine dot com
Reviewed by: grehan
Obtained from: Sandvine
Diffstat (limited to 'sys/amd64/vmm/intel/vmx.c')
-rw-r--r-- | sys/amd64/vmm/intel/vmx.c | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/sys/amd64/vmm/intel/vmx.c b/sys/amd64/vmm/intel/vmx.c index f8d5833..4bbcea8 100644 --- a/sys/amd64/vmm/intel/vmx.c +++ b/sys/amd64/vmm/intel/vmx.c @@ -1185,6 +1185,10 @@ vmx_exit_process(struct vmx *vmx, int vcpu, struct vm_exit *vmexit) case EXIT_REASON_CPUID: handled = vmx_handle_cpuid(vcpu, vmxctx); break; + case EXIT_REASON_EPT_FAULT: + vmexit->exitcode = VM_EXITCODE_PAGING; + vmexit->u.paging.cr3 = vmcs_guest_cr3(); + break; default: break; } |