Home
last modified time | relevance | path

Searched refs:tsc_offset (Results 1 – 18 of 18) sorted by relevance

/linux/tools/testing/selftests/kvm/x86/
H A Dhyperv_clock.c16 volatile s64 tsc_offset; member
81 return mul_u64_u64_shr64(rdtsc(), tsc_page->tsc_scale) + tsc_page->tsc_offset; in get_tscpage_ts()
103 u64 tsc_scale, tsc_offset; in guest_main() local
118 GUEST_ASSERT(tsc_page->tsc_offset == 0); in guest_main()
132 tsc_offset = tsc_page->tsc_offset; in guest_main()
139 GUEST_ASSERT(tsc_page->tsc_offset != tsc_offset); in guest_main()
149 tsc_offset = tsc_page->tsc_offset; in guest_main()
152 GUEST_ASSERT(tsc_page->tsc_offset == tsc_offset); in guest_main()
170 GUEST_ASSERT(tsc_page->tsc_offset == 0); in guest_main()
H A Dnested_tsc_adjust_test.c111 svm->vmcb->control.tsc_offset = TSC_OFFSET_VALUE; in l1_guest_code()
/linux/tools/testing/selftests/kvm/
H A Dsystem_counter_offset_test.c20 u64 tsc_offset; member
39 &test->tsc_offset); in setup_system_counter()
49 return rdtsc() + test->tsc_offset; in host_read_guest_system_counter()
/linux/tools/perf/util/intel-pt-decoder/
H A Dintel-pt-decoder.c2505 decoder->packet.payload -= vmcs_info->tsc_offset; in intel_pt_translate_vm_tsc()
2519 vmcs_info->tsc_offset);
2523 uint64_t tsc_offset) in intel_pt_translate_vm_tsc_offset()
2527 .tsc_offset = tsc_offset in intel_pt_translate_vm_tsc_offset()
2546 vmcs_info->vmcs, vmcs_info->tsc_offset);
2573 if (vmcs_info && vmcs_info->tsc_offset) { in intel_pt_vm_tm_corr_first_tsc()
2588 if (vmcs_info && vmcs_info->tsc_offset) in intel_pt_vm_tm_corr_first_tsc()
2600 uint64_t tsc_offset = 0; in intel_pt_vm_tm_corr_tsc()
2645 tsc_offset in intel_pt_vm_tm_corr_tsc()
2521 intel_pt_translate_vm_tsc_offset(struct intel_pt_decoder * decoder,uint64_t tsc_offset) intel_pt_translate_vm_tsc_offset() argument
2598 uint64_t tsc_offset = 0; intel_pt_vm_tm_corr_tsc() local
[all...]
H A Dintel-pt-decoder.h211 uint64_t tsc_offset; member
/linux/arch/x86/kvm/svm/
H A Dnested.c538 to->tsc_offset = from->tsc_offset; in __nested_copy_vmcb_control_to_cache()
944 vcpu->arch.tsc_offset = kvm_calc_nested_tsc_offset(vcpu->arch.l1_tsc_offset, in nested_vmcb02_prepare_control()
945 vmcb12_ctrl->tsc_offset, in nested_vmcb02_prepare_control()
948 vmcb02->control.tsc_offset = vcpu->arch.tsc_offset; in nested_vmcb02_prepare_control()
1409 svm->vcpu.arch.tsc_offset = svm->vcpu.arch.l1_tsc_offset; in nested_svm_vmexit()
1410 if (vmcb01->control.tsc_offset != svm->vcpu.arch.tsc_offset) { in nested_svm_vmexit()
1411 vmcb01->control.tsc_offset = svm->vcpu.arch.tsc_offset; in nested_svm_vmexit()
1857 dst->tsc_offset = from->tsc_offset; in nested_copy_vmcb_cache_to_control()
H A Dsvm.c1008 return svm->nested.ctl.tsc_offset; in svm_get_l2_tsc_offset()
1022 svm->vmcb01.ptr->control.tsc_offset = vcpu->arch.l1_tsc_offset; in svm_write_tsc_offset()
1023 svm->vmcb->control.tsc_offset = vcpu->arch.tsc_offset; in svm_write_tsc_offset()
3450 pr_err("%-20s%016llx\n", "tsc_offset:", control->tsc_offset); in dump_vmcb()
H A Dsvm.h186 u64 tsc_offset; member
/linux/include/clocksource/
H A Dhyperv_timer.h77 offset = READ_ONCE(tsc_pg->tsc_offset); in hv_read_tsc_page_tsc()
/linux/tools/testing/selftests/kvm/include/x86/
H A Devmcs.h114 u64 tsc_offset; member
352 *value = current_evmcs->tsc_offset; in evmcs_vmread()
775 current_evmcs->tsc_offset = value; in evmcs_vmwrite()
/linux/arch/x86/kvm/
H A Dhyperv.c588 + hv->tsc_ref.tsc_offset; in get_time_ref_counter()
1139 tsc_ref->tsc_offset = hv_clock->system_time; in compute_tsc_page_parameters()
1140 do_div(tsc_ref->tsc_offset, 100); in compute_tsc_page_parameters()
1141 tsc_ref->tsc_offset -= in compute_tsc_page_parameters()
H A Dx86.c2703 vcpu->arch.tsc_offset = kvm_calc_nested_tsc_offset( in kvm_vcpu_write_tsc_offset()
2708 vcpu->arch.tsc_offset = l1_offset; in kvm_vcpu_write_tsc_offset()
2871 u64 tsc_offset = vcpu->arch.l1_tsc_offset; in adjust_tsc_offset_guest() local
2872 kvm_vcpu_write_tsc_offset(vcpu, tsc_offset + adjustment); in adjust_tsc_offset_guest()
4409 offset = vcpu->arch.tsc_offset; in kvm_get_msr_common()
/linux/Documentation/virt/kvm/x86/
H A Dnested-vmx.rst101 u64 tsc_offset;
/linux/arch/x86/kvm/vmx/
H A Dtdx.c696 vcpu->arch.tsc_offset = kvm_tdx->tsc_offset; in tdx_vcpu_create()
697 vcpu->arch.l1_tsc_offset = vcpu->arch.tsc_offset; in tdx_vcpu_create()
2823 kvm_tdx->tsc_offset = td_tdcs_exec_read64(kvm_tdx, TD_TDCS_EXEC_TSC_OFFSET); in tdx_td_init()
H A Dnested.c1899 vmcs12->tsc_offset = evmcs->tsc_offset; in copy_enlightened_to_vmcs12()
2813 vcpu->arch.tsc_offset = kvm_calc_nested_tsc_offset( in prepare_vmcs02()
2822 vmcs_write64(TSC_OFFSET, vcpu->arch.tsc_offset); in prepare_vmcs02()
3762 vcpu->arch.tsc_offset -= vmcs12->tsc_offset; in nested_vmx_enter_non_root_mode()
5105 vcpu->arch.tsc_offset = vcpu->arch.l1_tsc_offset; in __nested_vmx_vmexit()
5163 vmcs_write64(TSC_OFFSET, vcpu->arch.tsc_offset); in __nested_vmx_vmexit()
/linux/tools/perf/util/
H A Dintel-pt.c342 v->tsc_offset = dflt_tsc_offset; in intel_pt_findnew_vmcs()
4325 u64 tsc_offset, vmcs; in intel_pt_parse_vm_tm_corr_arg()
4334 tsc_offset = strtoull(p, &p, 0); in intel_pt_parse_vm_tm_corr_arg()
4339 pt->dflt_tsc_offset = tsc_offset; in intel_pt_parse_vm_tm_corr_args()
4350 vmcs_info = intel_pt_findnew_vmcs(&pt->vmcs_info, vmcs, tsc_offset); in intel_pt_parse_vm_tm_corr_args()
4302 u64 tsc_offset, vmcs; intel_pt_parse_vm_tm_corr_arg() local
/linux/include/hyperv/
H A Dhvgdk_mini.h596 volatile s64 tsc_offset; member
/linux/arch/x86/include/asm/
H A Dkvm_host.h989 u64 tsc_offset; /* current tsc offset */ member