Changeset View
Changeset View
Standalone View
Standalone View
sys/amd64/vmm/intel/vmx_msr.h
Show All 30 Lines | |||||
#ifndef _VMX_MSR_H_ | #ifndef _VMX_MSR_H_ | ||||
#define _VMX_MSR_H_ | #define _VMX_MSR_H_ | ||||
struct vmx; | struct vmx; | ||||
void vmx_msr_init(void); | void vmx_msr_init(void); | ||||
void vmx_msr_guest_init(struct vmx *vmx, struct vmx_vcpu *vcpu); | void vmx_msr_guest_init(struct vmx *vmx, struct vmx_vcpu *vcpu); | ||||
void vmx_msr_guest_enter_tsc_aux(struct vmx *vmx, struct vmx_vcpu *vcpu); | void vmx_msr_guest_enter_tsc_aux(struct vmx *vmx, struct vmx_vcpu *vcpu); | ||||
void vmx_msr_guest_enter(struct vmx *vmx, struct vmx_vcpu *vcpu); | void vmx_msr_guest_enter(struct vmx_vcpu *vcpu); | ||||
void vmx_msr_guest_exit(struct vmx *vmx, struct vmx_vcpu *vcpu); | void vmx_msr_guest_exit(struct vmx_vcpu *vcpu); | ||||
void vmx_msr_guest_exit_tsc_aux(struct vmx *vmx, struct vmx_vcpu *vcpu); | void vmx_msr_guest_exit_tsc_aux(struct vmx *vmx, struct vmx_vcpu *vcpu); | ||||
int vmx_rdmsr(struct vmx *, struct vmx_vcpu *vcpu, u_int num, uint64_t *val, | int vmx_rdmsr(struct vmx_vcpu *vcpu, u_int num, uint64_t *val, bool *retu); | ||||
bool *retu); | int vmx_wrmsr(struct vmx_vcpu *vcpu, u_int num, uint64_t val, bool *retu); | ||||
int vmx_wrmsr(struct vmx *, struct vmx_vcpu *vcpu, u_int num, uint64_t val, | |||||
bool *retu); | |||||
uint32_t vmx_revision(void); | uint32_t vmx_revision(void); | ||||
int vmx_set_ctlreg(int ctl_reg, int true_ctl_reg, uint32_t ones_mask, | int vmx_set_ctlreg(int ctl_reg, int true_ctl_reg, uint32_t ones_mask, | ||||
uint32_t zeros_mask, uint32_t *retval); | uint32_t zeros_mask, uint32_t *retval); | ||||
/* | /* | ||||
* According to Section 21.10.4 "Software Access to Related Structures", | * According to Section 21.10.4 "Software Access to Related Structures", | ||||
Show All 23 Lines |