Home
last modified time | relevance | path

Searched refs:ms_hyperv (Results 1 – 16 of 16) sorted by relevance

/linux/arch/x86/kernel/cpu/
H A Dmshyperv.c39 struct ms_hyperv_info ms_hyperv; variable
73 if (hv_is_synic_msr(reg) && ms_hyperv.paravisor_present) in hv_get_non_nested_msr()
83 if (hv_is_synic_msr(reg) && ms_hyperv.paravisor_present) { in hv_set_non_nested_msr()
114 if (WARN_ON(!ms_hyperv.paravisor_present || !hv_is_synic_msr(reg))) in hv_para_get_synic_register()
124 if (WARN_ON(!ms_hyperv.paravisor_present || !hv_is_synic_msr(reg))) in hv_para_set_synic_register()
164 if (ms_hyperv.hints & HV_DEPRECATING_AEOI_RECOMMENDED) in DEFINE_IDTENTRY_SYSVEC()
318 if (!(ms_hyperv.features & HV_MSR_REFERENCE_TSC_AVAILABLE)) in x86_setup_ops_for_tsc_pg_clock()
422 if (!ms_hyperv.paravisor_present && hv_isolation_type_snp()) { in hv_smp_prepare_cpus()
492 ms_hyperv.features = cpuid_eax(HYPERV_CPUID_FEATURES); in ms_hyperv_init_platform()
493 ms_hyperv.priv_high = cpuid_ebx(HYPERV_CPUID_FEATURES); in ms_hyperv_init_platform()
[all …]
/linux/arch/x86/hyperv/
H A Dhv_init.c93 if (!ms_hyperv.paravisor_present || !hv_isolation_type_snp()) in hyperv_init_ghcb()
107 ghcb_gpa &= ~ms_hyperv.shared_gpa_boundary; in hyperv_init_ghcb()
158 if (*hvp && !ms_hyperv.paravisor_present && hv_isolation_type_snp()) { in hv_cpu_init()
174 if (ms_hyperv.misc_features & HV_STIMER_DIRECT_MODE_AVAILABLE) in hv_cpu_init()
214 return ms_hyperv.features & HV_ACCESS_FREQUENCY_MSRS && in hv_reenlightenment_available()
215 ms_hyperv.misc_features & HV_FEATURE_FREQUENCY_MSRS_AVAILABLE && in hv_reenlightenment_available()
216 ms_hyperv.features & HV_ACCESS_REENLIGHTENMENT; in hv_reenlightenment_available()
284 if (ms_hyperv.misc_features & HV_STIMER_DIRECT_MODE_AVAILABLE) in hv_cpu_die()
474 ms_hyperv.hints &= ~HV_X64_ENLIGHTENED_VMCS_RECOMMENDED; in hyperv_init()
480 if (ms_hyperv.paravisor_present && hv_isolation_type_snp()) { in hyperv_init()
[all …]
H A Dhv_apic.c120 if (!(ms_hyperv.hints & HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED)) in __send_ipi_mask_ex()
190 if (ms_hyperv.paravisor_present || !hv_isolation_type_tdx()) in __send_ipi_mask()
250 if (ms_hyperv.paravisor_present || !hv_isolation_type_tdx()) in __send_ipi_one()
304 if (ms_hyperv.hints & HV_X64_CLUSTER_IPI_RECOMMENDED) { in hv_apic_init()
319 if (ms_hyperv.hints & HV_X64_APIC_ACCESS_RECOMMENDED) { in hv_apic_init()
H A Divm.c310 if (vp_index < 0 || vp_index > ms_hyperv.max_vp_index) in hv_snp_boot_ap()
361 start_vp_input->target_vtl.target_vtl = ms_hyperv.vtl; in hv_snp_boot_ap()
460 if (!ms_hyperv.paravisor_present) in hv_ivm_msr_write()
471 if (!ms_hyperv.paravisor_present) in hv_ivm_msr_read()
886 cc_set_mask(ms_hyperv.shared_gpa_boundary); in hv_vtom_init()
887 physical_mask &= ms_hyperv.shared_gpa_boundary - 1; in hv_vtom_init()
905 if (!(ms_hyperv.priv_high & HV_ISOLATION)) in hv_get_isolation_type()
907 return FIELD_GET(HV_ISOLATION_TYPE, ms_hyperv.isolation_config_b); in hv_get_isolation_type()
H A Dhv_vtl.c69 pr_info("Linux runs in Hyper-V Virtual Trust Level %d\n", ms_hyperv.vtl); in hv_vtl_init_platform()
231 if (vp_index > ms_hyperv.max_vp_index) { in hv_vtl_wakeup_secondary_cpu()
/linux/drivers/hv/
H A Dhv.c68 if (hv_isolation_type_tdx() && ms_hyperv.paravisor_present) in hv_post_message()
79 if (ms_hyperv.paravisor_present && !vmbus_is_confidential()) { in hv_post_message()
199 if (ms_hyperv.paravisor_present && hv_isolation_type_tdx()) { in hv_synic_alloc()
211 if (!ms_hyperv.paravisor_present && !hv_root_partition()) { in hv_synic_alloc()
253 if (ms_hyperv.paravisor_present && hv_isolation_type_tdx()) in hv_synic_free()
256 if (!ms_hyperv.paravisor_present && !hv_root_partition()) { in hv_synic_free()
289 if (ms_hyperv.paravisor_present || hv_root_partition()) { in hv_hyp_synic_enable_regs()
292 ~ms_hyperv.shared_gpa_boundary; in hv_hyp_synic_enable_regs()
308 if (ms_hyperv.paravisor_present || hv_root_partition()) { in hv_hyp_synic_enable_regs()
311 ~ms_hyperv.shared_gpa_boundary; in hv_hyp_synic_enable_regs()
[all …]
H A Dhv_common.c52 struct ms_hyperv_info __weak ms_hyperv; variable
53 EXPORT_SYMBOL_GPL(ms_hyperv);
92 if (ms_hyperv.misc_features & HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE) in hv_common_free()
337 if (ms_hyperv.misc_features & HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE) { in hv_common_init()
501 if (!ms_hyperv.paravisor_present && in hv_common_cpu_init()
592 if (!(ms_hyperv.priv_high & HV_ENABLE_EXTENDED_HYPERCALLS)) in hv_query_ext_cap()
754 if ((ms_hyperv.priv_high & HV_CREATE_PARTITIONS) && in hv_identify_partition_type()
755 !(ms_hyperv.priv_high & HV_ISOLATION)) { in hv_identify_partition_type()
759 } else if (ms_hyperv.priv_high & HV_CPU_MANAGEMENT) { in hv_identify_partition_type()
H A Dconnection.c102 msg->msg_vtl = ms_hyperv.vtl; in vmbus_negotiate_version()
117 ms_hyperv.shared_gpa_boundary; in vmbus_negotiate_version()
119 ms_hyperv.shared_gpa_boundary; in vmbus_negotiate_version()
516 if (ms_hyperv.paravisor_present) { in vmbus_set_event()
H A Dmshv_eventfd.c159 if (!(ms_hyperv.ext_features & in mshv_try_assert_irq_fast()
H A Dmshv_root_main.c289 return ms_hyperv.ext_features & HV_VP_GHCB_ROOT_MAPPING_AVAILABLE; in is_ghcb_mapping_available()
H A Dvmbus_drv.c1483 is_confidential = ms_hyperv.confidential_vmbus_available; in vmbus_bus_init()
/linux/drivers/clocksource/
H A Dhyperv_timer.c152 if (!ms_hyperv.paravisor_present && hv_isolation_type_tdx()) in hv_stimer_init()
271 if (!(ms_hyperv.features & HV_MSR_SYNTIMER_AVAILABLE)) in hv_stimer_alloc()
278 direct_mode_enabled = ms_hyperv.misc_features & in hv_stimer_alloc()
566 if ((ms_hyperv.features & HV_ACCESS_TSC_INVARIANT) || in hv_init_tsc_clocksource()
572 if (!(ms_hyperv.features & HV_MSR_REFERENCE_TSC_AVAILABLE)) in hv_init_tsc_clocksource()
610 if (!(ms_hyperv.features & HV_ACCESS_TSC_INVARIANT)) { in hv_init_tsc_clocksource()
630 if (ms_hyperv.features & HV_MSR_TIME_REF_COUNT_AVAILABLE) in hv_init_clocksource()
636 if (!(ms_hyperv.features & HV_MSR_REFERENCE_TSC_AVAILABLE)) in hv_remap_tsc_clocksource()
/linux/arch/x86/kvm/svm/
H A Dsvm_onhyperv.h22 return ms_hyperv.nested_features & HV_X64_NESTED_ENLIGHTENED_TLB && in svm_hv_is_enlightened_tlb_enabled()
34 ms_hyperv.nested_features & HV_X64_NESTED_ENLIGHTENED_TLB) in svm_hv_init_vmcb()
37 if (ms_hyperv.nested_features & HV_X64_NESTED_MSR_BITMAP) in svm_hv_init_vmcb()
H A Dsvm_onhyperv.c41 ms_hyperv.nested_features & HV_X64_NESTED_ENLIGHTENED_TLB) { in svm_hv_hardware_setup()
47 if (ms_hyperv.nested_features & HV_X64_NESTED_DIRECT_FLUSH) { in svm_hv_hardware_setup()
/linux/include/asm-generic/
H A Dmshyperv.h68 extern struct ms_hyperv_info ms_hyperv;
90 return !(ms_hyperv.hints & HV_DEPRECATING_AEOI_RECOMMENDED); in hv_recommend_using_aeoi()
/linux/arch/x86/kvm/vmx/
H A Dvmx.c653 if (ms_hyperv.hints & HV_X64_ENLIGHTENED_VMCS_RECOMMENDED && in hv_init_evmcs()
654 (ms_hyperv.nested_features & HV_X64_ENLIGHTENED_VMCS_VERSION) >= in hv_init_evmcs()
670 if (ms_hyperv.nested_features & HV_X64_NESTED_DIRECT_FLUSH) in hv_init_evmcs()
7628 (ms_hyperv.nested_features & HV_X64_NESTED_MSR_BITMAP)) { in vmx_vcpu_create()
8569 if (ms_hyperv.nested_features & HV_X64_NESTED_GUEST_MAPPING_FLUSH in vmx_hardware_setup()