Turnstone Operating System
Loading...
Searching...
No Matches
hypervisor_svm_vmcb_ops.64.c File Reference

SVM vmcb operations for 64-bit x86 architecture. More...

#include <hypervisor/hypervisor_svm_vmcb_ops.h>
#include <hypervisor/hypervisor_svm_macros.h>
#include <hypervisor/hypervisor_utils.h>
#include <hypervisor/hypervisor_ept.h>
#include <memory/paging.h>
#include <cpu.h>
#include <cpu/task.h>
#include <apic.h>
#include <cpu/crx.h>
#include <logging.h>

Functions

 MODULE ("turnstone.hypervisor.svm")
 
static void hypervisor_svm_io_bitmap_set_port (uint8_t *bitmap, uint16_t port)
 
static int8_t hypervisor_svm_msr_bitmap_set (uint8_t *bitmap, uint32_t msr, boolean_t read)
 
int8_t hypervisor_svm_vmcb_set_running (hypervisor_vm_t *vm)
 
int8_t hypervisor_svm_vmcb_set_stopped (hypervisor_vm_t *vm)
 
static void hypervisor_svm_vmcb_set_vapic_defaults (uint64_t vapic_address)
 
static int8_t hypervisor_svm_vmcb_prepare_control_area (hypervisor_vm_t *vm)
 
static int8_t hypervisor_svm_vmcb_prepare_save_state_area (hypervisor_vm_t *vm)
 
int8_t hypervisor_svm_vmcb_prepare_ept (hypervisor_vm_t *vm)
 
int8_t hypervisor_svm_vmcb_prepare (hypervisor_vm_t **vm_out)
 

Detailed Description

SVM vmcb operations for 64-bit x86 architecture.

This work is licensed under TURNSTONE OS Public License. Please read and understand latest version of Licence.