Home
last modified time | relevance | path

Searched refs:vmcs_config (Results 1 – 5 of 5) sorted by relevance

/linux/arch/x86/kvm/vmx/
H A Dcapabilities.h53 struct vmcs_config { struct
64 extern struct vmcs_config vmcs_config __ro_after_init; argument
74 return vmcs_config.basic & VMX_BASIC_INOUT; in cpu_has_vmx_basic_inout()
79 return vmcs_config.basic & VMX_BASIC_NO_HW_ERROR_CODE_CC; in cpu_has_vmx_basic_no_hw_errcode_cc()
84 return vmcs_config.pin_based_exec_ctrl & PIN_BASED_VIRTUAL_NMIS && in cpu_has_virtual_nmis()
85 vmcs_config.cpu_based_exec_ctrl & CPU_BASED_NMI_WINDOW_EXITING; in cpu_has_virtual_nmis()
90 return vmcs_config.pin_based_exec_ctrl & in cpu_has_vmx_preemption_timer()
96 return vmcs_config.pin_based_exec_ctrl & PIN_BASED_POSTED_INTR; in cpu_has_vmx_posted_intr()
101 return vmcs_config.vmentry_ctrl & VM_ENTRY_LOAD_IA32_EFER; in cpu_has_load_ia32_efer()
106 return vmcs_config.vmentry_ctrl & VM_ENTRY_LOAD_IA32_PERF_GLOBAL_CTRL; in cpu_has_load_perf_global_ctrl()
[all …]
H A Dvmx_onhyperv.c28 void evmcs_sanitize_exec_ctrls(struct vmcs_config *vmcs_conf) in evmcs_sanitize_exec_ctrls()
H A Dvmx.c596 struct vmcs_config vmcs_config __ro_after_init;
2080 return vmx_get_vmx_msr(&vmcs_config.nested, msr, data); in vmx_get_feature_msr()
2446 if (vmcs_config.vmentry_ctrl & VM_ENTRY_LOAD_IA32_PAT) in vmx_set_msr()
2709 static int setup_vmcs_config(struct vmcs_config *vmcs_conf, in setup_vmcs_config()
2924 struct vmcs_config vmcs_conf; in vmx_check_processor_compat()
2937 if (memcmp(&vmcs_config, &vmcs_conf, sizeof(struct vmcs_config))) { in vmx_check_processor_compat()
2938 u32 *gold = (void *)&vmcs_config; in vmx_check_processor_compat()
2942 BUILD_BUG_ON(sizeof(struct vmcs_config) % sizeof(u32)); in vmx_check_processor_compat()
2945 for (i = 0; i < sizeof(struct vmcs_config) / sizeof(u32); i++) { in vmx_check_processor_compat()
3001 memset(vmcs, 0, vmx_basic_vmcs_size(vmcs_config.basic)); in alloc_vmcs_cpu()
[all …]
H A Dnested.c1300 u64 vmx_basic = vmcs_config.nested.basic; in vmx_restore_vmx_basic()
1366 vmx_get_control_msr(&vmcs_config.nested, msr_index, &lowp, &highp); in vmx_restore_control_msr()
1398 u64 vmx_misc = vmx_control_msr(vmcs_config.nested.misc_low, in vmx_restore_vmx_misc()
1399 vmcs_config.nested.misc_high); in vmx_restore_vmx_misc()
1434 u64 vmx_ept_vpid_cap = vmx_control_msr(vmcs_config.nested.ept_caps, in vmx_restore_vmx_ept_vpid_cap()
1435 vmcs_config.nested.vpid_caps); in vmx_restore_vmx_ept_vpid_cap()
1460 const u64 *msr = vmx_get_fixed0_msr(&vmcs_config.nested, msr_index); in vmx_restore_fixed0_msr()
1530 if (data & ~vmcs_config.nested.vmfunc_controls) in vmx_set_vmx_msr()
2754 } else if (vmcs_config.vmentry_ctrl & VM_ENTRY_LOAD_IA32_PAT) { in prepare_vmcs02()
7099 static void nested_vmx_setup_pinbased_ctls(struct vmcs_config *vmcs_conf, in nested_vmx_setup_pinbased_ctls()
[all …]
H A Dnested.h21 void nested_vmx_setup_ctls_msrs(struct vmcs_config *vmcs_conf, u32 ept_caps);