| /linux-6.15/arch/x86/kernel/cpu/ |
| H A D | mshyperv.c | 38 struct ms_hyperv_info ms_hyperv; variable 454 ms_hyperv.features, ms_hyperv.priv_high, in ms_hyperv_init_platform() 455 ms_hyperv.ext_features, ms_hyperv.hints, in ms_hyperv_init_platform() 456 ms_hyperv.misc_features); in ms_hyperv_init_platform() 462 ms_hyperv.max_vp_index, ms_hyperv.max_lp_index); in ms_hyperv_init_platform() 483 ms_hyperv.shared_gpa_boundary = in ms_hyperv_init_platform() 489 ms_hyperv.isolation_config_a, ms_hyperv.isolation_config_b); in ms_hyperv_init_platform() 500 if (!ms_hyperv.paravisor_present) { in ms_hyperv_init_platform() 530 ms_hyperv.nested_features = in ms_hyperv_init_platform() 533 ms_hyperv.nested_features); in ms_hyperv_init_platform() [all …]
|
| /linux-6.15/arch/arm64/hyperv/ |
| H A D | mshyperv.c | 54 ms_hyperv.features = result.as32.a; in hyperv_init() 55 ms_hyperv.priv_high = result.as32.b; in hyperv_init() 56 ms_hyperv.misc_features = result.as32.c; in hyperv_init() 59 ms_hyperv.hints = result.as32.a; in hyperv_init() 62 ms_hyperv.features, ms_hyperv.priv_high, ms_hyperv.hints, in hyperv_init() 63 ms_hyperv.misc_features); in hyperv_init() 78 if (ms_hyperv.priv_high & HV_ACCESS_PARTITION_ID) in hyperv_init()
|
| /linux-6.15/drivers/hv/ |
| H A D | hv.c | 66 if (hv_isolation_type_tdx() && ms_hyperv.paravisor_present) in hv_post_message() 77 if (ms_hyperv.paravisor_present) { in hv_post_message() 147 if (!ms_hyperv.paravisor_present && !hv_root_partition()) { in hv_synic_alloc() 166 if (!ms_hyperv.paravisor_present && in hv_synic_alloc() 226 if (!ms_hyperv.paravisor_present && in hv_synic_free() 275 if (ms_hyperv.paravisor_present || hv_root_partition()) { in hv_synic_enable_regs() 278 ~ms_hyperv.shared_gpa_boundary; in hv_synic_enable_regs() 294 if (ms_hyperv.paravisor_present || hv_root_partition()) { in hv_synic_enable_regs() 297 ~ms_hyperv.shared_gpa_boundary; in hv_synic_enable_regs() 360 if (ms_hyperv.paravisor_present || hv_root_partition()) { in hv_synic_disable_regs() [all …]
|
| H A D | hv_common.c | 52 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() 343 if (ms_hyperv.misc_features & HV_FEATURE_GUEST_CRASH_MSR_AVAILABLE) { in hv_common_init() 507 if (!ms_hyperv.paravisor_present && in hv_common_cpu_init() 598 if (!(ms_hyperv.priv_high & HV_ENABLE_EXTENDED_HYPERCALLS)) in hv_query_ext_cap() 739 if ((ms_hyperv.priv_high & HV_CREATE_PARTITIONS) && in hv_identify_partition_type() 740 (ms_hyperv.priv_high & HV_CPU_MANAGEMENT) && in hv_identify_partition_type() 741 !(ms_hyperv.priv_high & HV_ISOLATION)) { in hv_identify_partition_type()
|
| H A D | connection.c | 101 msg->msg_vtl = ms_hyperv.vtl; in vmbus_negotiate_version() 113 ms_hyperv.shared_gpa_boundary; in vmbus_negotiate_version() 115 ms_hyperv.shared_gpa_boundary; in vmbus_negotiate_version() 501 if (ms_hyperv.paravisor_present) { in vmbus_set_event()
|
| H A D | mshv_eventfd.c | 159 if (!(ms_hyperv.ext_features & in mshv_try_assert_irq_fast()
|
| H A D | mshv_root_main.c | 265 return ms_hyperv.ext_features & HV_VP_GHCB_ROOT_MAPPING_AVAILABLE; in is_ghcb_mapping_available()
|
| /linux-6.15/arch/x86/hyperv/ |
| H A D | hv_init.c | 54 if (!ms_hyperv.paravisor_present || !hv_isolation_type_snp()) in hyperv_init_ghcb() 68 ghcb_gpa &= ~ms_hyperv.shared_gpa_boundary; in hyperv_init_ghcb() 171 return ms_hyperv.features & HV_ACCESS_FREQUENCY_MSRS && in hv_reenlightenment_available() 173 ms_hyperv.features & HV_ACCESS_REENLIGHTENMENT; in hv_reenlightenment_available() 458 ms_hyperv.hints &= ~HV_X64_ENLIGHTENED_VMCS_RECOMMENDED; in hyperv_init() 464 if (ms_hyperv.paravisor_present && hv_isolation_type_snp()) { in hyperv_init() 508 if (hv_isolation_type_tdx() && !ms_hyperv.paravisor_present) in hyperv_init() 587 if (ms_hyperv.priv_high & HV_ACCESS_PARTITION_ID) in hyperv_init() 603 ms_hyperv.vtl = get_vtl(); in hyperv_init() 605 if (ms_hyperv.vtl > 0) /* non default VTL */ in hyperv_init() [all …]
|
| H A D | hv_apic.c | 114 if (!(ms_hyperv.hints & HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED)) in __send_ipi_mask_ex() 184 if (ms_hyperv.paravisor_present || !hv_isolation_type_tdx()) in __send_ipi_mask() 244 if (ms_hyperv.paravisor_present || !hv_isolation_type_tdx()) in __send_ipi_one() 295 if (ms_hyperv.hints & HV_X64_CLUSTER_IPI_RECOMMENDED) { in hv_apic_init() 310 if (ms_hyperv.hints & HV_X64_APIC_ACCESS_RECOMMENDED) { in hv_apic_init()
|
| H A D | hv_spinlock.c | 73 !(ms_hyperv.hints & HV_X64_CLUSTER_IPI_RECOMMENDED) || in hv_init_spinlocks() 74 !(ms_hyperv.features & HV_MSR_GUEST_IDLE_AVAILABLE)) { in hv_init_spinlocks()
|
| H A D | ivm.c | 352 start_vp_input->target_vtl.target_vtl = ms_hyperv.vtl; in hv_snp_boot_ap() 436 if (!ms_hyperv.paravisor_present) in hv_ivm_msr_write() 447 if (!ms_hyperv.paravisor_present) in hv_ivm_msr_read() 655 cc_set_mask(ms_hyperv.shared_gpa_boundary); in hv_vtom_init() 656 physical_mask &= ms_hyperv.shared_gpa_boundary - 1; in hv_vtom_init() 672 if (!(ms_hyperv.priv_high & HV_ISOLATION)) in hv_get_isolation_type() 674 return FIELD_GET(HV_ISOLATION_TYPE, ms_hyperv.isolation_config_b); in hv_get_isolation_type()
|
| H A D | mmu.c | 179 if (!(ms_hyperv.hints & HV_X64_EX_PROCESSOR_MASKS_RECOMMENDED)) in hyperv_flush_tlb_others_ex() 241 if (!(ms_hyperv.hints & HV_X64_REMOTE_TLB_FLUSH_RECOMMENDED)) in hyperv_setup_mmu_ops()
|
| H A D | hv_vtl.c | 260 if (vp_id > ms_hyperv.max_vp_index) { in hv_vtl_wakeup_secondary_cpu()
|
| /linux-6.15/arch/x86/kvm/svm/ |
| H A D | svm_onhyperv.h | 24 return ms_hyperv.nested_features & HV_X64_NESTED_ENLIGHTENED_TLB && in svm_hv_is_enlightened_tlb_enabled() 36 ms_hyperv.nested_features & HV_X64_NESTED_ENLIGHTENED_TLB) in svm_hv_init_vmcb() 39 if (ms_hyperv.nested_features & HV_X64_NESTED_MSR_BITMAP) in svm_hv_init_vmcb() 46 ms_hyperv.nested_features & HV_X64_NESTED_ENLIGHTENED_TLB) { in svm_hv_hardware_setup() 52 if (ms_hyperv.nested_features & HV_X64_NESTED_DIRECT_FLUSH) { in svm_hv_hardware_setup()
|
| /linux-6.15/drivers/clocksource/ |
| H A D | hyperv_timer.c | 151 if (!ms_hyperv.paravisor_present && hv_isolation_type_tdx()) in hv_stimer_init() 270 if (!(ms_hyperv.features & HV_MSR_SYNTIMER_AVAILABLE)) in hv_stimer_alloc() 277 direct_mode_enabled = ms_hyperv.misc_features & in hv_stimer_alloc() 558 if (ms_hyperv.features & HV_ACCESS_TSC_INVARIANT) { in hv_init_tsc_clocksource() 563 if (!(ms_hyperv.features & HV_MSR_REFERENCE_TSC_AVAILABLE)) in hv_init_tsc_clocksource() 601 if (!(ms_hyperv.features & HV_ACCESS_TSC_INVARIANT)) { in hv_init_tsc_clocksource() 621 if (ms_hyperv.features & HV_MSR_TIME_REF_COUNT_AVAILABLE) in hv_init_clocksource() 627 if (!(ms_hyperv.features & HV_MSR_REFERENCE_TSC_AVAILABLE)) in hv_remap_tsc_clocksource()
|
| /linux-6.15/include/asm-generic/ |
| H A D | mshyperv.h | 65 extern struct ms_hyperv_info ms_hyperv; 87 return !(ms_hyperv.hints & HV_DEPRECATING_AEOI_RECOMMENDED); in hv_recommend_using_aeoi()
|
| /linux-6.15/arch/x86/kvm/vmx/ |
| H A D | vmx.c | 564 if (ms_hyperv.hints & HV_X64_ENLIGHTENED_VMCS_RECOMMENDED && in hv_init_evmcs() 565 (ms_hyperv.nested_features & HV_X64_ENLIGHTENED_VMCS_VERSION) >= in hv_init_evmcs() 581 if (ms_hyperv.nested_features & HV_X64_NESTED_DIRECT_FLUSH) in hv_init_evmcs() 7620 (ms_hyperv.nested_features & HV_X64_NESTED_MSR_BITMAP)) { in vmx_vcpu_create() 8564 if (ms_hyperv.nested_features & HV_X64_NESTED_GUEST_MAPPING_FLUSH in vmx_hardware_setup()
|
| /linux-6.15/drivers/pci/controller/ |
| H A D | pci-hyperv.c | 3679 hbus->use_calls = !!(ms_hyperv.hints & HV_X64_USE_MMIO_HYPERCALLS); in hv_pci_probe()
|