mirror of https://github.com/bochs-emu/Bochs
cpu/vmx definitions (#20)
* update vmx.h with recently published definition * update actions after conflicts
This commit is contained in:
parent
430ba44b0e
commit
94503e7a0b
|
@ -13,18 +13,21 @@ jobs:
|
|||
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
|
||||
- name: configure for release
|
||||
run: cd bochs && ./.conf.linux
|
||||
- name: make
|
||||
run: make -C bochs
|
||||
- name: cleanup
|
||||
run: make -C bochs all-clean
|
||||
|
||||
- name: configure minimalistic configuration
|
||||
run: cd bochs && ./.conf.nothing
|
||||
- name: make
|
||||
run: make -C bochs
|
||||
- name: cleanup
|
||||
run: make -C bochs all-clean
|
||||
|
||||
- name: configure maximum possible configuration
|
||||
run: cd bochs && ./.conf.everything
|
||||
- name: make
|
||||
|
|
|
@ -706,6 +706,7 @@ typedef struct bx_VMCS
|
|||
#define VMX_VM_EXEC_CTRL2_RDTSC_VMEXIT (1 << 12)
|
||||
#define VMX_VM_EXEC_CTRL2_CR3_WRITE_VMEXIT (1 << 15) /* legacy must be '1 */
|
||||
#define VMX_VM_EXEC_CTRL2_CR3_READ_VMEXIT (1 << 16) /* legacy must be '1 */
|
||||
#define VMX_VM_EXEC_CTRL2_TERTIARY_CONTROLS (1 << 17)
|
||||
#define VMX_VM_EXEC_CTRL2_CR8_WRITE_VMEXIT (1 << 19) /* TPR shadow */
|
||||
#define VMX_VM_EXEC_CTRL2_CR8_READ_VMEXIT (1 << 20) /* TPR shadow */
|
||||
#define VMX_VM_EXEC_CTRL2_TPR_SHADOW (1 << 21) /* TPR shadow */
|
||||
|
@ -739,7 +740,7 @@ typedef struct bx_VMCS
|
|||
#define VMX_VM_EXEC_CTRL3_INVPCID (1 << 12)
|
||||
#define VMX_VM_EXEC_CTRL3_VMFUNC_ENABLE (1 << 13) /* VM Functions */
|
||||
#define VMX_VM_EXEC_CTRL3_VMCS_SHADOWING (1 << 14) /* VMCS Shadowing */
|
||||
#define VMX_VM_EXEC_CTRL3_SGX_ENCLS_VMEXIT (1 << 15) /* ENCLS/SGX */
|
||||
#define VMX_VM_EXEC_CTRL3_SGX_ENCLS_VMEXIT (1 << 15) /* ENCLS/SGX (not implemented) */
|
||||
#define VMX_VM_EXEC_CTRL3_RDSEED_VMEXIT (1 << 16)
|
||||
#define VMX_VM_EXEC_CTRL3_PML_ENABLE (1 << 17) /* Page Modification Logging */
|
||||
#define VMX_VM_EXEC_CTRL3_EPT_VIOLATION_EXCEPTION (1 << 18) /* #VE Exception */
|
||||
|
@ -747,7 +748,11 @@ typedef struct bx_VMCS
|
|||
#define VMX_VM_EXEC_CTRL3_XSAVES_XRSTORS (1 << 20) /* XSAVES */
|
||||
#define VMX_VM_EXEC_CTRL3_MBE_CTRL (1 << 22) /* Mode Based Execution Control (not implemented yet) */
|
||||
#define VMX_VM_EXEC_CTRL3_SUBPAGE_WR_PROTECT_CTRL (1 << 23) /* Sub-Page Write Protection Control */
|
||||
#define VMX_VM_EXEC_CTRL3_PROCESSOR_TRACE_USE_GPA (1 << 24) /* Processor Trace (not implemented) */
|
||||
#define VMX_VM_EXEC_CTRL3_TSC_SCALING (1 << 25) /* TSC Scaling */
|
||||
#define VMX_VM_EXEC_CTRL3_USER_MWAIT_TPAUSE_VMEXIT (1 << 26) // not implemented yet
|
||||
#define VMX_VM_EXEC_CTRL3_PCONFIG_ENABLE (1 << 27) // not implemented yet
|
||||
#define VMX_VM_EXEC_CTRL3_SGX_ENCLV_VMEXIT (1 << 28) /* ENCLV/SGX (not implemented) */
|
||||
|
||||
#define VMX_VM_EXEC_CTRL3_SUPPORTED_BITS \
|
||||
(BX_CPU_THIS_PTR vmx_cap.vmx_vmexec_ctrl2_supported_bits)
|
||||
|
@ -829,8 +834,11 @@ typedef struct bx_VMCS
|
|||
#define VMX_VMEXIT_CTRL1_STORE_VMX_PREEMPTION_TIMER (1 << 22) /* VMX preemption timer */
|
||||
#define VMX_VMEXIT_CTRL1_CLEAR_BNDCFGS (1 << 23) /* MPX (not implemented) */
|
||||
#define VMX_VMEXIT_CTRL1_SUPPRESS_HOST_VMX_TRACE (1 << 24) /* Processor Trace (not implemented) */
|
||||
#define VMX_VMEXIT_CTRL1_CLEAR_IA32_RTIT_CTRL (1 << 25) /* Clear IA32_RTIT_CTRL MSR on vmexit (not implemented) */
|
||||
#define VMX_VMEXIT_CTRL1_CLEAR_IA32_LBR_CTRL (1 << 26) /* Clear IA32_LBR_CTRL MSR on vmexit (not implemented) */
|
||||
#define VMX_VMEXIT_CTRL1_LOAD_HOST_CET_STATE (1 << 28) /* CET */
|
||||
#define VMX_VMEXIT_CTRL1_LOAD_HOST_PKRS (1 << 29) /* Supervisor-Mode Protection Keys */
|
||||
#define VMX_VMEXIT_CTRL1_SAVE_PERF_GLOBAL_CTRL (1 << 30) /* Save IA32_PERF_GLOBAL_CTRL on vmexit (not implemented) */
|
||||
|
||||
#define VMX_VMEXIT_CTRL1_SUPPORTED_BITS \
|
||||
(BX_CPU_THIS_PTR vmx_cap.vmx_vmexit_ctrl_supported_bits)
|
||||
|
@ -855,7 +863,9 @@ typedef struct bx_VMCS
|
|||
#define VMX_VMENTRY_CTRL1_LOAD_EFER_MSR (1 << 15) /* EFER */
|
||||
#define VMX_VMENTRY_CTRL1_LOAD_BNDCFGS (1 << 16) /* MPX (not implemented) */
|
||||
#define VMX_VMENTRY_CTRL1_SUPPRESS_VMX_PACKETS (1 << 17) /* Processor Trace (not implemented) */
|
||||
#define VMX_VMENTRY_CTRL1_LOAD_GUEST_RTIT_CTRL (1 << 18) // not implemented
|
||||
#define VMX_VMENTRY_CTRL1_LOAD_GUEST_CET_STATE (1 << 20) /* CET */
|
||||
#define VMX_VMENTRY_CTRL1_LOAD_GUEST_LBR_CTRL (1 << 21) // not implemented
|
||||
#define VMX_VMENTRY_CTRL1_LOAD_GUEST_PKRS (1 << 22) /* Supervisor-Mode Protection Keys */
|
||||
|
||||
#define VMX_VMENTRY_CTRL1_SUPPORTED_BITS \
|
||||
|
|
Loading…
Reference in New Issue