Turnstone Operating System
|
VMExit handler for 64-bit mode. More...
#include <hypervisor/hypervisor_vmcsops.h>
#include <hypervisor/hypervisor_vmxops.h>
#include <hypervisor/hypervisor_utils.h>
#include <hypervisor/hypervisor_macros.h>
#include <hypervisor/hypervisor_ept.h>
#include <hypervisor/hypervisor_ipc.h>
#include <hypervisor/hypervisor_vm.h>
#include <cpu.h>
#include <cpu/crx.h>
#include <cpu/interrupt.h>
#include <cpu/task.h>
#include <logging.h>
#include <list.h>
#include <apic.h>
Functions | |
MODULE ("turnstone.hypervisor") | |
static uint64_t | hypervisor_vmcs_external_interrupt_handler (vmcs_vmexit_info_t *vmexit_info) |
static uint64_t | hypervisor_vmcs_ept_misconfig_handler (vmcs_vmexit_info_t *vmexit_info) |
static uint64_t | hypervisor_vmcs_hlt_handler (vmcs_vmexit_info_t *vmexit_info) |
static uint64_t | hypervisor_vmcs_pause_handler (vmcs_vmexit_info_t *vmexit_info) |
static uint64_t | hypervisor_vmcs_io_instruction_handler (vmcs_vmexit_info_t *vmexit_info) |
static void | hypervisor_vmcs_find_next_x2apic_interrupt (hypervisor_vm_t *vm, boolean_t iterate, boolean_t for_eoi) |
static uint64_t | hypervisor_vmcs_interrupt_window_handler (vmcs_vmexit_info_t *vmexit_info) |
static uint64_t | hypervisor_vmcs_rdmsr_handler (vmcs_vmexit_info_t *vmexit_info) |
static uint64_t | hypervisor_vmcs_wrmsr_handler (vmcs_vmexit_info_t *vmexit_info) |
static uint64_t | hypervisor_vmcs_control_register_access_handler (vmcs_vmexit_info_t *vmexit_info) |
static uint64_t | hypervisor_vmcs_exception_or_nmi_handler (vmcs_vmexit_info_t *exit_info) |
uint64_t | hypervisor_vmcs_exit_handler_entry (uint64_t rsp) |
int8_t | hypervisor_vmcs_prepare_vmexit_handlers (void) |
Variables | |
vmexit_handler_t | vmexit_handlers [VMX_VMEXIT_REASON_COUNT] = {0} |
VMExit handler for 64-bit mode.
This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.