class AutoVmcs
Defined at line 214 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu_priv.h
A guard-like object that loads a VMCS within a given scope.
Public Methods
void AutoVmcs (paddr_t vmcs_address_, bool clear)
Constructing an AutoVmcs disables interrupts, disables preemption, and
marks the calling thread as not being allowed to block (in order to catch
programming errors). Destroying or |Invalidate|ing restores those previous
states.
Defined at line 561 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
void ~AutoVmcs ()
Defined at line 572 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
void Invalidate ()
Defined at line 581 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
void InterruptWindowExiting (bool enable)
Defined at line 589 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
void IssueInterrupt (uint32_t vector)
Defined at line 600 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
uint16_t Read (VmcsField16 field)
Defined at line 622 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
uint32_t Read (VmcsField32 field)
Defined at line 627 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
uint64_t Read (VmcsField64 field)
Defined at line 632 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
uint64_t Read (VmcsFieldXX field)
Defined at line 637 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
void Write (VmcsField16 field, uint16_t val)
Defined at line 642 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
void Write (VmcsField32 field, uint32_t val)
Defined at line 647 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
void Write (VmcsField64 field, uint64_t val)
Defined at line 652 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
void Write (VmcsFieldXX field, uint64_t val)
Defined at line 657 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc
zx::result<> SetControl (VmcsField32 controls, uint64_t true_msr, uint64_t old_msr, uint32_t set, uint32_t clear)
Defined at line 662 of file ../../zircon/kernel/arch/x86/hypervisor/vcpu.cc