/kernel/linux/linux-5.10/arch/x86/kvm/vmx/ |
H A D | vmx_ops.h | 22 void invept_error(unsigned long ext, u64 eptp, gpa_t gpa); 266 static inline void __invept(unsigned long ext, u64 eptp, gpa_t gpa) in __invept() argument 269 u64 eptp, gpa; in __invept() member 270 } operand = {eptp, gpa}; in __invept() 272 vmx_asm2(invept, "r"(ext), "m"(operand), ext, eptp, gpa); in __invept() 312 static inline void ept_sync_context(u64 eptp) in ept_sync_context() argument 315 __invept(VMX_EPT_EXTENT_CONTEXT, eptp, 0); in ept_sync_context()
|
H A D | vmx.c | 464 noinline void invept_error(unsigned long ext, u64 eptp, gpa_t gpa) in invept_error() argument 466 vmx_insn_failed("kvm: invept failed: ext=0x%lx eptp=%llx gpa=0x%llx\n", in invept_error() 467 ext, eptp, gpa); in invept_error() 3165 u64 eptp = VMX_EPTP_MT_WB; in construct_eptp() local 3167 eptp |= (root_level == 5) ? VMX_EPTP_PWL_5 : VMX_EPTP_PWL_4; in construct_eptp() 3171 eptp |= VMX_EPTP_AD_ENABLE_BIT; in construct_eptp() 3172 eptp |= (root_hpa & PAGE_MASK); in construct_eptp() 3174 return eptp; in construct_eptp() 3183 u64 eptp; in vmx_load_mmu_pgd() local 3186 eptp in vmx_load_mmu_pgd() [all...] |
H A D | nested.c | 3274 * Check if PML is enabled for the nested guest. Whether eptp bit 6 is in nested_vmx_write_pml_buffer() 5397 static bool nested_ept_root_matches(hpa_t root_hpa, u64 root_eptp, u64 eptp) in nested_ept_root_matches() argument 5400 ((root_eptp & EPTP_PA_MASK) == (eptp & EPTP_PA_MASK)); in nested_ept_root_matches() 5413 u64 eptp, gpa; in handle_invept() member 5453 if (!nested_vmx_check_eptp(vcpu, operand.eptp)) in handle_invept() 5459 operand.eptp)) in handle_invept() 5465 operand.eptp)) in handle_invept()
|
/kernel/linux/linux-6.6/arch/x86/kvm/vmx/ |
H A D | vmx_ops.h | 18 void invept_error(unsigned long ext, u64 eptp, gpa_t gpa); 315 static inline void __invept(unsigned long ext, u64 eptp, gpa_t gpa) in __invept() argument 318 u64 eptp, gpa; in __invept() member 319 } operand = {eptp, gpa}; in __invept() 321 vmx_asm2(invept, "r"(ext), "m"(operand), ext, eptp, gpa); in __invept() 361 static inline void ept_sync_context(u64 eptp) in ept_sync_context() argument 364 __invept(VMX_EPT_EXTENT_CONTEXT, eptp, 0); in ept_sync_context()
|
H A D | nested.c | 352 static bool nested_ept_root_matches(hpa_t root_hpa, u64 root_eptp, u64 eptp) in nested_ept_root_matches() argument 355 ((root_eptp & EPTP_PA_MASK) == (eptp & EPTP_PA_MASK)); in nested_ept_root_matches() 358 static void nested_ept_invalidate_addr(struct kvm_vcpu *vcpu, gpa_t eptp, in nested_ept_invalidate_addr() argument 371 eptp)) in nested_ept_invalidate_addr() 3318 * Check if PML is enabled for the nested guest. Whether eptp bit 6 is in nested_vmx_write_pml_buffer() 5677 u64 eptp, gpa; in handle_invept() member 5718 if (!nested_vmx_check_eptp(vcpu, operand.eptp)) in handle_invept() 5724 operand.eptp)) in handle_invept() 5730 operand.eptp)) in handle_invept()
|
H A D | vmx.c | 475 noinline void invept_error(unsigned long ext, u64 eptp, gpa_t gpa) in invept_error() argument 477 vmx_insn_failed("invept failed: ext=0x%lx eptp=%llx gpa=0x%llx\n", in invept_error() 478 ext, eptp, gpa); in invept_error() 3378 u64 eptp = VMX_EPTP_MT_WB; in construct_eptp() local 3380 eptp |= (root_level == 5) ? VMX_EPTP_PWL_5 : VMX_EPTP_PWL_4; in construct_eptp() 3384 eptp |= VMX_EPTP_AD_ENABLE_BIT; in construct_eptp() 3385 eptp |= root_hpa; in construct_eptp() 3387 return eptp; in construct_eptp() 3396 u64 eptp; in vmx_load_mmu_pgd() local 3399 eptp in vmx_load_mmu_pgd() [all...] |
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/lib/x86_64/ |
H A D | memstress.c | 98 vmx->eptp = vmx0->eptp; in memstress_setup_nested()
|
H A D | vmx.c | 202 struct eptPageTablePointer eptp = { in init_vmcs_control_fields() local 209 memcpy(&ept_paddr, &eptp, sizeof(ept_paddr)); in init_vmcs_control_fields() 544 vmx->eptp = (void *)vm_vaddr_alloc_page(vm); in prepare_eptp() 545 vmx->eptp_hva = addr_gva2hva(vm, (uintptr_t)vmx->eptp); in prepare_eptp() 546 vmx->eptp_gpa = addr_gva2gpa(vm, (uintptr_t)vmx->eptp); in prepare_eptp()
|
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/lib/x86_64/ |
H A D | vmx.c | 217 struct eptPageTablePointer eptp = { in init_vmcs_control_fields() local 224 memcpy(&ept_paddr, &eptp, sizeof(ept_paddr)); in init_vmcs_control_fields() 541 vmx->eptp = (void *)vm_vaddr_alloc(vm, getpagesize(), 0x10000, 0, 0); in prepare_eptp() 542 vmx->eptp_hva = addr_gva2hva(vm, (uintptr_t)vmx->eptp); in prepare_eptp() 543 vmx->eptp_gpa = addr_gva2gpa(vm, (uintptr_t)vmx->eptp); in prepare_eptp()
|
/kernel/linux/linux-5.10/arch/x86/include/asm/ |
H A D | vmx.h | 503 static inline u8 vmx_eptp_page_walk_level(u64 eptp) in vmx_eptp_page_walk_level() argument 505 u64 encoded_level = eptp & VMX_EPTP_PWL_MASK; in vmx_eptp_page_walk_level() 510 /* @eptp must be pre-validated by the caller. */ in vmx_eptp_page_walk_level()
|
/kernel/linux/linux-6.6/arch/x86/include/asm/ |
H A D | vmx.h | 521 static inline u8 vmx_eptp_page_walk_level(u64 eptp) in vmx_eptp_page_walk_level() argument 523 u64 encoded_level = eptp & VMX_EPTP_PWL_MASK; in vmx_eptp_page_walk_level() 528 /* @eptp must be pre-validated by the caller. */ in vmx_eptp_page_walk_level()
|
/kernel/linux/linux-5.10/tools/testing/selftests/kvm/include/x86_64/ |
H A D | vmx.h | 575 void *eptp; member
|
/kernel/linux/linux-6.6/tools/testing/selftests/kvm/include/x86_64/ |
H A D | vmx.h | 527 void *eptp; member
|