Home
last modified time | relevance | path

Searched refs:vmcs (Results 1 – 11 of 11) sorted by relevance

/Linux-v6.6/arch/x86/kvm/vmx/
Dvmx_ops.h15 void vmclear_error(struct vmcs *vmcs, u64 phys_addr);
16 void vmptrld_error(struct vmcs *vmcs, u64 phys_addr);
287 static inline void vmcs_clear(struct vmcs *vmcs) in vmcs_clear() argument
289 u64 phys_addr = __pa(vmcs); in vmcs_clear()
291 vmx_asm1(vmclear, "m"(phys_addr), vmcs, phys_addr); in vmcs_clear()
294 static inline void vmcs_load(struct vmcs *vmcs) in vmcs_load() argument
296 u64 phys_addr = __pa(vmcs); in vmcs_load()
301 vmx_asm1(vmptrld, "m"(phys_addr), vmcs, phys_addr); in vmcs_load()
Dvmcs.h21 struct vmcs { struct
27 DECLARE_PER_CPU(struct vmcs *, current_vmcs); argument
62 struct vmcs *vmcs; member
63 struct vmcs *shadow_vmcs;
Dvmx.h589 static inline u##bits __##lname##_controls_get(struct loaded_vmcs *vmcs) \
591 return vmcs->controls_shadow.lname; \
697 struct vmcs *alloc_vmcs_cpu(bool shadow, int cpu, gfp_t flags);
698 void free_vmcs(struct vmcs *vmcs);
703 static inline struct vmcs *alloc_vmcs(bool shadow) in alloc_vmcs()
Dvmx.c448 noinline void vmclear_error(struct vmcs *vmcs, u64 phys_addr) in vmclear_error() argument
451 vmcs, phys_addr, vmcs_read32(VM_INSTRUCTION_ERROR)); in vmclear_error()
454 noinline void vmptrld_error(struct vmcs *vmcs, u64 phys_addr) in vmptrld_error() argument
457 vmcs, phys_addr, vmcs_read32(VM_INSTRUCTION_ERROR)); in vmptrld_error()
472 static DEFINE_PER_CPU(struct vmcs *, vmxarea);
473 DEFINE_PER_CPU(struct vmcs *, current_vmcs);
538 evmcs = (struct hv_enlightened_vmcs *)to_vmx(vcpu)->loaded_vmcs->vmcs; in hv_enable_l2_tlb_flush()
778 vmcs_clear(v->vmcs); in vmx_emergency_disable()
790 if (per_cpu(current_vmcs, cpu) == loaded_vmcs->vmcs) in __loaded_vmcs_clear()
793 vmcs_clear(loaded_vmcs->vmcs); in __loaded_vmcs_clear()
[all …]
Dnested.c265 static void vmx_switch_vmcs(struct kvm_vcpu *vcpu, struct loaded_vmcs *vmcs) in vmx_switch_vmcs() argument
271 if (WARN_ON_ONCE(vmx->loaded_vmcs == vmcs)) in vmx_switch_vmcs()
276 vmx->loaded_vmcs = vmcs; in vmx_switch_vmcs()
1520 struct vmcs *shadow_vmcs = vmx->vmcs01.shadow_vmcs; in copy_shadow_to_vmcs12()
1540 vmcs_load(vmx->loaded_vmcs->vmcs); in copy_shadow_to_vmcs12()
1555 struct vmcs *shadow_vmcs = vmx->vmcs01.shadow_vmcs; in copy_vmcs12_to_shadow()
1576 vmcs_load(vmx->loaded_vmcs->vmcs); in copy_vmcs12_to_shadow()
5069 static struct vmcs *alloc_shadow_vmcs(struct kvm_vcpu *vcpu) in alloc_shadow_vmcs()
5547 vmcs_load(vmx->loaded_vmcs->vmcs); in handle_vmwrite()
/Linux-v6.6/tools/perf/util/intel-pt-decoder/
Dintel-pt-decoder.c124 struct intel_pt_vmcs_info *(*findnew_vmcs_info)(void *data, uint64_t vmcs);
167 uint64_t vmcs; member
2318 bool tsc, pip, vmcs, tma, psbend; member
2356 data->vmcs = true; in intel_pt_vm_psb_lookahead_cb()
2516 payload, decoder->packet.payload, vmcs_info->vmcs, in intel_pt_translate_vm_tsc()
2524 .vmcs = NO_VMCS, in intel_pt_translate_vm_tsc_offset()
2544 vmcs_info->vmcs, vmcs_info->tsc_offset); in intel_pt_print_vmcs_info()
2599 uint64_t vmcs; in intel_pt_vm_tm_corr_tsc() local
2627 vmcs = data->vmcs ? data->vmcs_packet.payload : decoder->vmcs; in intel_pt_vm_tm_corr_tsc()
2628 if (vmcs == NO_VMCS) in intel_pt_vm_tm_corr_tsc()
[all …]
Dintel-pt-decoder.h210 uint64_t vmcs; member
280 struct intel_pt_vmcs_info *(*findnew_vmcs_info)(void *data, uint64_t vmcs);
/Linux-v6.6/tools/testing/selftests/kvm/lib/x86_64/
Dvmx.c86 vmx->vmcs = (void *)vm_vaddr_alloc_page(vm); in vcpu_alloc_vmx()
87 vmx->vmcs_hva = addr_gva2hva(vm, (uintptr_t)vmx->vmcs); in vcpu_alloc_vmx()
88 vmx->vmcs_gpa = addr_gva2gpa(vm, (uintptr_t)vmx->vmcs); in vcpu_alloc_vmx()
163 *(uint32_t *)(vmx->vmcs) = vmcs_revision(); in load_vmcs()
/Linux-v6.6/tools/perf/util/
Dintel-pt.c317 u64 vmcs, in intel_pt_findnew_vmcs() argument
328 if (v->vmcs == vmcs) in intel_pt_findnew_vmcs()
331 if (vmcs < v->vmcs) in intel_pt_findnew_vmcs()
339 v->vmcs = vmcs; in intel_pt_findnew_vmcs()
350 static struct intel_pt_vmcs_info *intel_pt_findnew_vmcs_info(void *data, uint64_t vmcs) in intel_pt_findnew_vmcs_info() argument
355 if (!vmcs && !pt->dflt_tsc_offset) in intel_pt_findnew_vmcs_info()
358 return intel_pt_findnew_vmcs(&pt->vmcs_info, vmcs, pt->dflt_tsc_offset); in intel_pt_findnew_vmcs_info()
4071 u64 tsc_offset, vmcs; in intel_pt_parse_vm_tm_corr_arg() local
4091 vmcs = strtoull(p, &p, 0); in intel_pt_parse_vm_tm_corr_arg()
4094 if (!vmcs) in intel_pt_parse_vm_tm_corr_arg()
[all …]
/Linux-v6.6/tools/testing/selftests/kvm/include/x86_64/
Dvmx.h507 void *vmcs; member
Devmcs.h251 static inline int evmcs_vmptrld(uint64_t vmcs_pa, void *vmcs) in evmcs_vmptrld() argument
256 current_evmcs = vmcs; in evmcs_vmptrld()