/linux-master/arch/x86/kvm/vmx/ |
H A D | vmx_ops.h | 10 #include "vmcs.h" 15 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) argument 289 u64 phys_addr = __pa(vmcs); 291 vmx_asm1(vmclear, "m"(phys_addr), vmcs, phys_addr); 294 static inline void vmcs_load(struct vmcs *vmc argument [all...] |
H A D | vmcs.h | 21 struct vmcs { struct 27 DECLARE_PER_CPU(struct vmcs *, current_vmcs); 62 struct vmcs *vmcs; member in struct:loaded_vmcs 63 struct vmcs *shadow_vmcs;
|
H A D | vmx.h | 14 #include "vmcs.h" 151 * Indicates if the shadow vmcs or enlightened vmcs must be updated 594 static inline u##bits __##lname##_controls_get(struct loaded_vmcs *vmcs) \ 596 return vmcs->controls_shadow.lname; \ 702 struct vmcs *alloc_vmcs_cpu(bool shadow, int cpu, gfp_t flags); 703 void free_vmcs(struct vmcs *vmcs); 708 static inline struct vmcs *alloc_vmcs(bool shadow)
|
H A D | vmx.c | 67 #include "vmcs.h" 463 noinline void vmclear_error(struct vmcs *vmcs, u64 phys_addr) argument 466 vmcs, phys_addr, vmcs_read32(VM_INSTRUCTION_ERROR)); 469 noinline void vmptrld_error(struct vmcs *vmcs, u64 phys_addr) argument 472 vmcs, phys_addr, vmcs_read32(VM_INSTRUCTION_ERROR)); 487 static DEFINE_PER_CPU(struct vmcs *, vmxarea); 488 DEFINE_PER_CPU(struct vmcs *, current_vmcs); 546 evmcs = (struct hv_enlightened_vmcs *)to_vmx(vcpu)->loaded_vmcs->vmcs; 2860 struct vmcs *vmcs; local 2879 free_vmcs(struct vmcs *vmcs) argument 2946 struct vmcs *vmcs; local [all...] |
H A D | nested.c | 294 static void vmx_switch_vmcs(struct kvm_vcpu *vcpu, struct loaded_vmcs *vmcs) argument 300 if (WARN_ON_ONCE(vmx->loaded_vmcs == vmcs)) 305 vmx->loaded_vmcs = vmcs; 369 * Ensure that the current vmcs of the logical processor is the 1545 struct vmcs *shadow_vmcs = vmx->vmcs01.shadow_vmcs; 1565 vmcs_load(vmx->loaded_vmcs->vmcs); 1580 struct vmcs *shadow_vmcs = vmx->vmcs01.shadow_vmcs; 1601 vmcs_load(vmx->loaded_vmcs->vmcs); 2561 * L2 guest. L1 has a vmcs for L2 (vmcs12), and this function "merges" it 2564 * needs. In addition to modifying the active vmcs (whic [all...] |
/linux-master/arch/loongarch/kvm/ |
H A D | main.c | 17 static struct kvm_context __percpu *vmcs; variable in typeref:struct:__percpu 200 context = per_cpu_ptr(vcpu->kvm->arch.vmcs, cpu); 229 context = per_cpu_ptr(vcpu->kvm->arch.vmcs, cpu); 254 kvm->arch.vmcs = vmcs; 319 vmcs = alloc_percpu(struct kvm_context); 320 if (!vmcs) { 327 free_percpu(vmcs); 328 vmcs = NULL; 343 free_percpu(vmcs); [all...] |
H A D | vcpu.c | 952 context = per_cpu_ptr(vcpu->kvm->arch.vmcs, cpu); 974 context = per_cpu_ptr(vcpu->kvm->arch.vmcs, cpu);
|
/linux-master/tools/perf/util/intel-pt-decoder/ |
H A D | intel-pt-decoder.h | 210 uint64_t vmcs; member in struct:intel_pt_vmcs_info 280 struct intel_pt_vmcs_info *(*findnew_vmcs_info)(void *data, uint64_t vmcs);
|
H A D | intel-pt-decoder.c | 124 struct intel_pt_vmcs_info *(*findnew_vmcs_info)(void *data, uint64_t vmcs); 167 uint64_t vmcs; member in struct:intel_pt_decoder 2318 bool tsc, pip, vmcs, tma, psbend; member in struct:intel_pt_vm_tsc_info 2356 data->vmcs = true; 2516 payload, decoder->packet.payload, vmcs_info->vmcs, 2524 .vmcs = NO_VMCS, 2544 vmcs_info->vmcs, vmcs_info->tsc_offset); 2599 uint64_t vmcs; local 2627 vmcs = data->vmcs 2752 uint64_t vmcs; local [all...] |
/linux-master/arch/loongarch/include/asm/ |
H A D | kvm_host.h | 76 struct kvm_context __percpu *vmcs; member in struct:kvm_arch
|
/linux-master/tools/testing/selftests/kvm/lib/x86_64/ |
H A D | vmx.c | 85 /* Setup of a region of guest memory for a vmcs. */ 86 vmx->vmcs = (void *)vm_vaddr_alloc_page(vm); 87 vmx->vmcs_hva = addr_gva2hva(vm, (uintptr_t)vmx->vmcs); 88 vmx->vmcs_gpa = addr_gva2gpa(vm, (uintptr_t)vmx->vmcs); 163 *(uint32_t *)(vmx->vmcs) = vmcs_revision();
|
/linux-master/tools/perf/util/ |
H A D | intel-pt.c | 317 u64 vmcs, 328 if (v->vmcs == vmcs) 331 if (vmcs < v->vmcs) 339 v->vmcs = vmcs; 350 static struct intel_pt_vmcs_info *intel_pt_findnew_vmcs_info(void *data, uint64_t vmcs) argument 355 if (!vmcs && !pt->dflt_tsc_offset) 358 return intel_pt_findnew_vmcs(&pt->vmcs_info, vmcs, p 316 intel_pt_findnew_vmcs(struct rb_root *rb_root, u64 vmcs, u64 dflt_tsc_offset) argument 4073 u64 tsc_offset, vmcs; local [all...] |
/linux-master/tools/testing/selftests/kvm/include/x86_64/ |
H A D | vmx.h | 507 void *vmcs; member in struct:vmx_pages
|
H A D | evmcs.h | 251 static inline int evmcs_vmptrld(uint64_t vmcs_pa, void *vmcs) argument 256 current_evmcs = vmcs;
|