freebsd-skq/sys/amd64/vmm
neel 11f176f814 Simplify register state save and restore across a VMRUN:
- Host registers are now stored on the stack instead of a per-cpu host context.

- Host %FS and %GS selectors are not saved and restored across VMRUN.
  - Restoring the %FS/%GS selectors was futile anyways since that only updates
    the low 32 bits of base address in the hidden descriptor state.
  - GS.base is properly updated via the MSR_GSBASE on return from svm_launch().
  - FS.base is not used while inside the kernel so it can be safely ignored.

- Add function prologue/epilogue so svm_launch() can be traced with Dtrace's
  FBT entry/exit probes. They also serve to save/restore the host %rbp across
  VMRUN.

Reviewed by:	grehan
Discussed with:	Anish Gupta (akgupt3@gmail.com)
2014-09-27 02:04:58 +00:00
..
amd Simplify register state save and restore across a VMRUN: 2014-09-27 02:04:58 +00:00
intel IFC r271888. 2014-09-20 21:46:31 +00:00
io IFC @r271694 2014-09-17 18:46:51 +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 IFC @r271694 2014-09-17 18:46:51 +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 Roll back botched partial MFC :( 2014-02-04 05:03:14 +00:00
vmm_mem.c MFC @ r256071 2013-12-18 22:31:53 +00:00
vmm_mem.h MFC @ r256071 2013-12-18 22:31:53 +00:00
vmm_stat.c Get rid of unused stat VMM_HLT_IGNORED. 2014-09-21 18:52:56 +00:00
vmm_stat.h Get rid of unused stat VMM_HLT_IGNORED. 2014-09-21 18:52:56 +00:00
vmm_support.S
vmm_util.c
vmm_util.h
vmm.c IFC r271888. 2014-09-20 21:46:31 +00:00
x86.c IFC @r271694 2014-09-17 18:46:51 +00:00
x86.h Allow CPUID leaf 0xD to be read as zeroes. 2013-09-06 05:16:10 +00:00