Searched refs:hv_clock (Results 1 – 4 of 4) sorted by relevance
| /linux-6.15/arch/x86/kvm/ |
| H A D | hyperv.h | 182 struct pvclock_vcpu_time_info *hv_clock); 270 struct pvclock_vcpu_time_info *hv_clock) {} in kvm_hv_setup_tsc_page() argument
|
| H A D | xen.c | 154 struct pvclock_vcpu_time_info *hv_clock, in xen_get_guest_pvclock() argument 162 while (!kvm_gpc_check(gpc, offset + sizeof(*hv_clock))) { in xen_get_guest_pvclock() 165 r = kvm_gpc_refresh(gpc, offset + sizeof(*hv_clock)); in xen_get_guest_pvclock() 172 memcpy(hv_clock, gpc->khva + offset, sizeof(*hv_clock)); in xen_get_guest_pvclock() 179 if (hv_clock->tsc_shift != vcpu->arch.pvclock_tsc_shift || in xen_get_guest_pvclock() 180 hv_clock->tsc_to_system_mul != vcpu->arch.pvclock_tsc_mul) in xen_get_guest_pvclock() 212 struct pvclock_vcpu_time_info hv_clock; in kvm_xen_start_timer() local 227 r = xen_get_guest_pvclock(vcpu, &hv_clock, &xen->vcpu_info_cache, in kvm_xen_start_timer() 230 r = xen_get_guest_pvclock(vcpu, &hv_clock, &xen->vcpu_time_info_cache, 0); in kvm_xen_start_timer() 254 guest_now = __pvclock_read_cycles(&hv_clock, guest_tsc); in kvm_xen_start_timer()
|
| H A D | hyperv.c | 1108 static bool compute_tsc_page_parameters(struct pvclock_vcpu_time_info *hv_clock, in compute_tsc_page_parameters() argument 1113 if (!(hv_clock->flags & PVCLOCK_TSC_STABLE_BIT)) in compute_tsc_page_parameters() 1122 max_mul = 100ull << (32 - hv_clock->tsc_shift); in compute_tsc_page_parameters() 1123 if (hv_clock->tsc_to_system_mul >= max_mul) in compute_tsc_page_parameters() 1131 mul_u64_u32_div(1ULL << (32 + hv_clock->tsc_shift), in compute_tsc_page_parameters() 1132 hv_clock->tsc_to_system_mul, in compute_tsc_page_parameters() 1135 tsc_ref->tsc_offset = hv_clock->system_time; in compute_tsc_page_parameters() 1138 mul_u64_u64_shr(hv_clock->tsc_timestamp, tsc_ref->tsc_scale, 64); in compute_tsc_page_parameters() 1158 struct pvclock_vcpu_time_info *hv_clock) in kvm_hv_setup_tsc_page() argument 1203 if (!compute_tsc_page_parameters(hv_clock, &hv->tsc_ref)) in kvm_hv_setup_tsc_page()
|
| H A D | x86.c | 3082 struct pvclock_vcpu_time_info hv_clock; in __get_kvmclock() local 3104 &hv_clock.tsc_shift, in __get_kvmclock() 3105 &hv_clock.tsc_to_system_mul); in __get_kvmclock() 3139 struct pvclock_vcpu_time_info hv_clock; in kvm_setup_guest_pvclock() local 3142 memcpy(&hv_clock, ref_hv_clock, sizeof(hv_clock)); in kvm_setup_guest_pvclock() 3258 hv_clock.tsc_timestamp = tsc_timestamp; in kvm_guest_time_update() 3263 hv_clock.flags = 0; in kvm_guest_time_update() 3282 kvm_hv_setup_tsc_page(v->kvm, &hv_clock); in kvm_guest_time_update() 3327 struct pvclock_vcpu_time_info hv_clock; in kvm_get_wall_clock_epoch() local 3372 &hv_clock.tsc_shift, in kvm_get_wall_clock_epoch() [all …]
|