Lines Matching refs:hv
289 struct kvm_hv *hv = &kvm->arch.hyperv; in kvm_hv_syndbg_complete_userspace() local
292 hv->hv_syndbg.control.status = in kvm_hv_syndbg_complete_userspace()
520 struct kvm_hv *hv = &kvm->arch.hyperv; in get_time_ref_counter() local
528 if (!hv->tsc_ref.tsc_sequence) in get_time_ref_counter()
533 return mul_u64_u64_shr(tsc, hv->tsc_ref.tsc_scale, 64) in get_time_ref_counter()
534 + hv->tsc_ref.tsc_offset; in get_time_ref_counter()
948 struct kvm_hv *hv = &vcpu->kvm->arch.hyperv; in kvm_hv_msr_get_crash_data() local
949 size_t size = ARRAY_SIZE(hv->hv_crash_param); in kvm_hv_msr_get_crash_data()
954 *pdata = hv->hv_crash_param[array_index_nospec(index, size)]; in kvm_hv_msr_get_crash_data()
960 struct kvm_hv *hv = &vcpu->kvm->arch.hyperv; in kvm_hv_msr_get_crash_ctl() local
962 *pdata = hv->hv_crash_ctl; in kvm_hv_msr_get_crash_ctl()
968 struct kvm_hv *hv = &vcpu->kvm->arch.hyperv; in kvm_hv_msr_set_crash_ctl() local
971 hv->hv_crash_ctl = data & HV_CRASH_CTL_CRASH_NOTIFY; in kvm_hv_msr_set_crash_ctl()
976 hv->hv_crash_param[0], in kvm_hv_msr_set_crash_ctl()
977 hv->hv_crash_param[1], in kvm_hv_msr_set_crash_ctl()
978 hv->hv_crash_param[2], in kvm_hv_msr_set_crash_ctl()
979 hv->hv_crash_param[3], in kvm_hv_msr_set_crash_ctl()
980 hv->hv_crash_param[4]); in kvm_hv_msr_set_crash_ctl()
992 struct kvm_hv *hv = &vcpu->kvm->arch.hyperv; in kvm_hv_msr_set_crash_data() local
993 size_t size = ARRAY_SIZE(hv->hv_crash_param); in kvm_hv_msr_set_crash_data()
998 hv->hv_crash_param[array_index_nospec(index, size)] = data; in kvm_hv_msr_set_crash_data()
1074 struct kvm_hv *hv = &kvm->arch.hyperv; in kvm_hv_setup_tsc_page() local
1078 BUILD_BUG_ON(sizeof(tsc_seq) != sizeof(hv->tsc_ref.tsc_sequence)); in kvm_hv_setup_tsc_page()
1081 if (!(hv->hv_tsc_page & HV_X64_MSR_TSC_REFERENCE_ENABLE)) in kvm_hv_setup_tsc_page()
1085 if (!(hv->hv_tsc_page & HV_X64_MSR_TSC_REFERENCE_ENABLE)) in kvm_hv_setup_tsc_page()
1088 gfn = hv->hv_tsc_page >> HV_X64_MSR_TSC_REFERENCE_ADDRESS_SHIFT; in kvm_hv_setup_tsc_page()
1101 hv->tsc_ref.tsc_sequence = 0; in kvm_hv_setup_tsc_page()
1103 &hv->tsc_ref, sizeof(hv->tsc_ref.tsc_sequence))) in kvm_hv_setup_tsc_page()
1106 if (!compute_tsc_page_parameters(hv_clock, &hv->tsc_ref)) in kvm_hv_setup_tsc_page()
1111 if (kvm_write_guest(kvm, gfn_to_gpa(gfn), &hv->tsc_ref, sizeof(hv->tsc_ref))) in kvm_hv_setup_tsc_page()
1124 hv->tsc_ref.tsc_sequence = tsc_seq; in kvm_hv_setup_tsc_page()
1126 &hv->tsc_ref, sizeof(hv->tsc_ref.tsc_sequence)); in kvm_hv_setup_tsc_page()
1135 struct kvm_hv *hv = &kvm->arch.hyperv; in kvm_hv_set_msr_pw() local
1139 hv->hv_guest_os_id = data; in kvm_hv_set_msr_pw()
1141 if (!hv->hv_guest_os_id) in kvm_hv_set_msr_pw()
1142 hv->hv_hypercall &= ~HV_X64_MSR_HYPERCALL_ENABLE; in kvm_hv_set_msr_pw()
1150 if (!hv->hv_guest_os_id) in kvm_hv_set_msr_pw()
1153 hv->hv_hypercall = data; in kvm_hv_set_msr_pw()
1164 hv->hv_hypercall = data; in kvm_hv_set_msr_pw()
1169 hv->hv_tsc_page = data; in kvm_hv_set_msr_pw()
1170 if (hv->hv_tsc_page & HV_X64_MSR_TSC_REFERENCE_ENABLE) in kvm_hv_set_msr_pw()
1186 hv->hv_reenlightenment_control = data; in kvm_hv_set_msr_pw()
1189 hv->hv_tsc_emulation_control = data; in kvm_hv_set_msr_pw()
1192 hv->hv_tsc_emulation_status = data; in kvm_hv_set_msr_pw()
1226 struct kvm_hv *hv = &vcpu->kvm->arch.hyperv; in kvm_hv_set_msr() local
1243 atomic_inc(&hv->num_mismatched_vp_indexes); in kvm_hv_set_msr()
1245 atomic_dec(&hv->num_mismatched_vp_indexes); in kvm_hv_set_msr()
1336 struct kvm_hv *hv = &kvm->arch.hyperv; in kvm_hv_get_msr_pw() local
1340 data = hv->hv_guest_os_id; in kvm_hv_get_msr_pw()
1343 data = hv->hv_hypercall; in kvm_hv_get_msr_pw()
1349 data = hv->hv_tsc_page; in kvm_hv_get_msr_pw()
1361 data = hv->hv_reenlightenment_control; in kvm_hv_get_msr_pw()
1364 data = hv->hv_tsc_emulation_control; in kvm_hv_get_msr_pw()
1367 data = hv->hv_tsc_emulation_status; in kvm_hv_get_msr_pw()
1472 struct kvm_hv *hv = &kvm->arch.hyperv; in sparse_set_to_vcpu_mask() local
1482 if (likely(!atomic_read(&hv->num_mismatched_vp_indexes))) { in sparse_set_to_vcpu_mask()
1910 struct kvm_hv *hv = &kvm->arch.hyperv; in kvm_hv_eventfd_assign() local
1918 mutex_lock(&hv->hv_lock); in kvm_hv_eventfd_assign()
1919 ret = idr_alloc(&hv->conn_to_evt, eventfd, conn_id, conn_id + 1, in kvm_hv_eventfd_assign()
1921 mutex_unlock(&hv->hv_lock); in kvm_hv_eventfd_assign()
1934 struct kvm_hv *hv = &kvm->arch.hyperv; in kvm_hv_eventfd_deassign() local
1937 mutex_lock(&hv->hv_lock); in kvm_hv_eventfd_deassign()
1938 eventfd = idr_remove(&hv->conn_to_evt, conn_id); in kvm_hv_eventfd_deassign()
1939 mutex_unlock(&hv->hv_lock); in kvm_hv_eventfd_deassign()