freebsd-src/sys/amd64/vmm
Neel Natu 091d453222 Handle nested exceptions in bhyve.
A nested exception condition arises when a second exception is triggered while
delivering the first exception. Most nested exceptions can be handled serially
but some are converted into a double fault. If an exception is generated during
delivery of a double fault then the virtual machine shuts down as a result of
a triple fault.

vm_exit_intinfo() is used to record that a VM-exit happened while an event was
being delivered through the IDT. If an exception is triggered while handling
the VM-exit it will be treated like a nested exception.

vm_entry_intinfo() is used by processor-specific code to get the event to be
injected into the guest on the next VM-entry. This function is responsible for
deciding the disposition of nested exceptions.
2014-07-19 20:59:08 +00:00
..
amd Re-write bhyve's I/O MMU handling in terms of PCI RID. 2014-04-01 15:54:03 +00:00
intel Handle nested exceptions in bhyve. 2014-07-19 20:59:08 +00:00
io Add reserved bit checking when doing %CR8 emulation and inject #GP if required. 2014-06-09 20:51:08 +00:00
vmm.c Handle nested exceptions in bhyve. 2014-07-19 20:59:08 +00:00
vmm_dev.c Handle nested exceptions in bhyve. 2014-07-19 20:59:08 +00:00
vmm_host.c - Rework the XSAVE/XRSTOR emulation to only expose XCR0 features to the 2014-05-27 19:04:38 +00:00
vmm_host.h Add virtualized XSAVE support to bhyve which permits guests to use XSAVE and 2014-02-08 16:37:54 +00:00
vmm_instruction_emul.c Add support for operand size and address size override prefixes in bhyve's 2014-07-15 17:37:17 +00:00
vmm_ioport.c Add segment protection and limits violation checks in vie_calculate_gla() 2014-05-27 04:26:22 +00:00
vmm_ioport.h Add emulation of the "outsb" instruction. NetBSD guests use this to write to 2014-05-23 05:15:17 +00:00
vmm_ipi.c Move <machine/apicvar.h> to <x86/apicvar.h>. 2014-01-23 20:10:22 +00:00
vmm_ipi.h Don't expose 'vmm_ipinum' as a global. 2014-01-09 03:25:54 +00:00
vmm_ktr.h Add emulation of the "outsb" instruction. NetBSD guests use this to write to 2014-05-23 05:15:17 +00:00
vmm_lapic.c Local APIC access via 32-bit naturally-aligned loads is merely 2014-04-15 17:06:26 +00:00
vmm_lapic.h vlapic code restructuring to make it easy to support hardware-assist for APIC 2013-12-25 06:46:31 +00:00
vmm_mem.c Merge projects/bhyve_npt_pmap into head. 2013-10-05 21:22:35 +00:00
vmm_mem.h Merge projects/bhyve_npt_pmap into head. 2013-10-05 21:22:35 +00:00
vmm_msr.c Fix x2apic support in bhyve. 2013-12-10 22:56:51 +00:00
vmm_msr.h Fix x2apic support in bhyve. 2013-12-10 22:56:51 +00:00
vmm_stat.c Expose the amount of resident and wired memory from the guest's vmspace. 2014-06-25 22:13:35 +00:00
vmm_stat.h Expose the amount of resident and wired memory from the guest's vmspace. 2014-06-25 22:13:35 +00:00
vmm_support.S
vmm_util.c
vmm_util.h
x86.c - Rework the XSAVE/XRSTOR emulation to only expose XCR0 features to the 2014-05-27 19:04:38 +00:00
x86.h Allow CPUID leaf 0xD to be read as zeroes. 2013-09-06 05:16:10 +00:00