Searched refs:pkvm (Results 1 – 9 of 9) sorted by relevance
/arch/arm64/kvm/hyp/include/nvhe/ |
D | pkvm.h | 92 return kvm->arch.pkvm.enabled; in kvm_is_protected() 147 return vm->kvm.arch.pkvm.pvmfw_load_addr != PVMFW_INVALID_LOAD_ADDR; in pkvm_hyp_vm_has_pvmfw() 153 struct kvm_protected_vm *pkvm = &vm->kvm.arch.pkvm; in pkvm_ipa_range_has_pvmfw() local 154 u64 pvmfw_load_end = pkvm->pvmfw_load_addr + pvmfw_size; in pkvm_ipa_range_has_pvmfw() 159 return ipa_end > pkvm->pvmfw_load_addr && ipa_start < pvmfw_load_end; in pkvm_ipa_range_has_pvmfw()
|
/arch/arm64/kvm/ |
D | pkvm.c | 209 pkvm_handle_t handle = host_kvm->arch.pkvm.handle; in __pkvm_create_hyp_vcpu() 316 host_kvm->arch.pkvm.handle, in __reclaim_dying_guest_page_call() 327 if (!host_kvm->arch.pkvm.handle) in __pkvm_destroy_hyp_vm() 330 WARN_ON(kvm_call_hyp_nvhe(__pkvm_start_teardown_vm, host_kvm->arch.pkvm.handle)); in __pkvm_destroy_hyp_vm() 332 mt_for_each(&host_kvm->arch.pkvm.pinned_pages, ppage, ipa, ULONG_MAX) { in __pkvm_destroy_hyp_vm() 339 unpin_user_pages_dirty_lock(&ppage->page, 1, host_kvm->arch.pkvm.enabled); in __pkvm_destroy_hyp_vm() 342 mtree_destroy(&host_kvm->arch.pkvm.pinned_pages); in __pkvm_destroy_hyp_vm() 344 WARN_ON(kvm_call_hyp_nvhe(__pkvm_finalize_teardown_vm, host_kvm->arch.pkvm.handle)); in __pkvm_destroy_hyp_vm() 347 host_kvm->arch.pkvm.handle = 0; in __pkvm_destroy_hyp_vm() 349 atomic64_sub(host_kvm->arch.pkvm.stage2_teardown_mc.nr_pages << PAGE_SHIFT, in __pkvm_destroy_hyp_vm() [all …]
|
D | mmu.c | 177 kvm_call_hyp_nvhe(__pkvm_tlb_flush_vmid, kvm->arch.pkvm.handle); in kvm_arch_flush_remote_tlbs() 296 return kvm_call_hyp_nvhe(__pkvm_host_unmap_guest, kvm->arch.pkvm.handle, in __pkvm_unmap_guest_call() 313 mtree_erase(&kvm->arch.pkvm.pinned_pages, ppage->ipa); in pkvm_unmap_guest() 327 mt_for_each(&kvm->arch.pkvm.pinned_pages, entry, index, end - 1) { in pkvm_unmap_range() 394 if (is_protected_kvm_enabled() && kvm->arch.pkvm.enabled) in __unmap_stage2_range() 425 mt_for_each(&kvm->arch.pkvm.pinned_pages, entry, index, ULONG_MAX) { in pkvm_stage2_flush() 1010 mt_init(&kvm->arch.pkvm.pinned_pages); in kvm_init_stage2_mmu() 1256 return kvm_call_hyp_nvhe(__pkvm_wrprotect, kvm->arch.pkvm.handle, pfn, in __pkvm_wrprotect_call() 1265 mt_for_each(&kvm->arch.pkvm.pinned_pages, entry, index, end - 1) { in pkvm_wp_range() 1601 mt_for_each(&kvm->arch.pkvm.pinned_pages, entry, index, ULONG_MAX) in find_ppage_or_above() [all …]
|
D | Makefile | 16 vgic-sys-reg-v3.o fpsimd.o pkvm.o \
|
D | ptdump.c | 244 pkvm_handle_t handle = kvm->arch.pkvm.handle; in kvm_ptdump_get_guest_snapshot() 440 handle = kvm ? kvm->arch.pkvm.handle : 0; in kvm_pgtable_debugfs_open()
|
D | arm.c | 576 vcpu->kvm->arch.pkvm.handle, in kvm_arch_vcpu_load()
|
/arch/arm64/kvm/hyp/nvhe/ |
D | Makefile | 8 cache.o setup.o mm.o mem_protect.o sys_regs.o pkvm.o stacktrace.o ffa.o \ 21 hyp-obj-$(CONFIG_ARM_SMMU_V3_PKVM) += ../../../../../drivers/iommu/arm/arm-smmu-v3/pkvm/arm-smmu-v3… 22 hyp-obj-$(CONFIG_ARM_SMMU_V3_PKVM) += ../../../../../drivers/iommu/arm/arm-smmu-v3/pkvm/io-pgtable-…
|
D | pkvm.c | 394 drain_hyp_pool(hyp_vm, &hyp_vm->host_kvm->arch.pkvm.stage2_teardown_mc); in __pkvm_reclaim_dying_guest_page() 641 hyp_vm->kvm.arch.pkvm.enabled = READ_ONCE(host_kvm->arch.pkvm.enabled); in init_pkvm_hyp_vm() 643 if (hyp_vm->kvm.arch.pkvm.enabled) in init_pkvm_hyp_vm() 644 pvmfw_load_addr = READ_ONCE(host_kvm->arch.pkvm.pvmfw_load_addr); in init_pkvm_hyp_vm() 645 hyp_vm->kvm.arch.pkvm.pvmfw_load_addr = pvmfw_load_addr; in init_pkvm_hyp_vm() 796 hyp_vm->kvm.arch.pkvm.handle = idx_to_vm_handle(idx); in insert_vm_table_entry() 805 return hyp_vm->kvm.arch.pkvm.handle; in insert_vm_table_entry() 886 return hyp_vm->kvm.arch.pkvm.handle; in __pkvm_init_vm() 889 remove_vm_table_entry(hyp_vm->kvm.arch.pkvm.handle); in __pkvm_init_vm() 1014 mc = &host_kvm->arch.pkvm.stage2_teardown_mc; in __pkvm_finalize_teardown_vm() [all …]
|
/arch/arm64/include/asm/ |
D | kvm_host.h | 321 struct kvm_protected_vm pkvm; member 1298 #define kvm_vm_is_protected(kvm) ((kvm)->arch.pkvm.enabled)
|