| /linux-6.15/arch/arm64/include/asm/ |
| H A D | kvm_pgtable.h | 414 struct kvm_pgtable { struct 439 int kvm_pgtable_hyp_init(struct kvm_pgtable *pgt, u32 va_bits, argument 449 void kvm_pgtable_hyp_destroy(struct kvm_pgtable *pgt); 492 u64 kvm_pgtable_hyp_unmap(struct kvm_pgtable *pgt, u64 addr, u64 size); 547 void kvm_pgtable_stage2_destroy(struct kvm_pgtable *pgt); 581 kvm_pte_t *kvm_pgtable_stage2_create_unlinked(struct kvm_pgtable *pgt, 615 int kvm_pgtable_stage2_map(struct kvm_pgtable *pgt, u64 addr, u64 size, 687 void kvm_pgtable_stage2_mkyoung(struct kvm_pgtable *pgt, u64 addr, 730 int kvm_pgtable_stage2_relax_perms(struct kvm_pgtable *pgt, u64 addr, 789 int kvm_pgtable_walk(struct kvm_pgtable *pgt, u64 addr, u64 size, [all …]
|
| H A D | kvm_pkvm.h | 172 int pkvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, 174 void pkvm_pgtable_stage2_destroy(struct kvm_pgtable *pgt); 175 int pkvm_pgtable_stage2_map(struct kvm_pgtable *pgt, u64 addr, u64 size, u64 phys, 178 int pkvm_pgtable_stage2_unmap(struct kvm_pgtable *pgt, u64 addr, u64 size); 179 int pkvm_pgtable_stage2_wrprotect(struct kvm_pgtable *pgt, u64 addr, u64 size); 180 int pkvm_pgtable_stage2_flush(struct kvm_pgtable *pgt, u64 addr, u64 size); 181 bool pkvm_pgtable_stage2_test_clear_young(struct kvm_pgtable *pgt, u64 addr, u64 size, bool mkold); 182 int pkvm_pgtable_stage2_relax_perms(struct kvm_pgtable *pgt, u64 addr, enum kvm_pgtable_prot prot, 184 void pkvm_pgtable_stage2_mkyoung(struct kvm_pgtable *pgt, u64 addr, 186 int pkvm_pgtable_stage2_split(struct kvm_pgtable *pgt, u64 addr, u64 size, [all …]
|
| H A D | kvm_host.h | 165 struct kvm_pgtable *pgt;
|
| /linux-6.15/arch/arm64/kvm/hyp/ |
| H A D | pgtable.c | 62 static u32 kvm_pgd_page_idx(struct kvm_pgtable *pgt, u64 addr) in kvm_pgd_page_idx() 72 struct kvm_pgtable pgt = { in kvm_pgd_pages() 311 int kvm_pgtable_get_leaf(struct kvm_pgtable *pgt, u64 addr, in kvm_pgtable_get_leaf() 518 int kvm_pgtable_hyp_init(struct kvm_pgtable *pgt, u32 va_bits, in kvm_pgtable_hyp_init() 557 void kvm_pgtable_hyp_destroy(struct kvm_pgtable *pgt) in kvm_pgtable_hyp_destroy() 640 static bool stage2_has_fwb(struct kvm_pgtable *pgt) in stage2_has_fwb() 845 struct kvm_pgtable *pgt = ctx->arg; in stage2_unmap_put_pte() 907 struct kvm_pgtable *pgt = data->mmu->pgt; in stage2_map_walker_try_leaf() 1098 struct kvm_pgtable *pgt = ctx->arg; in stage2_unmap_walker() 1324 struct kvm_pgtable *pgt = ctx->arg; in stage2_flush_walker() [all …]
|
| /linux-6.15/arch/arm64/kvm/ |
| H A D | pkvm.c | 323 int pkvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in pkvm_pgtable_stage2_init() 332 void pkvm_pgtable_stage2_destroy(struct kvm_pgtable *pgt) in pkvm_pgtable_stage2_destroy() 352 int pkvm_pgtable_stage2_map(struct kvm_pgtable *pgt, u64 addr, u64 size, in pkvm_pgtable_stage2_map() 382 int pkvm_pgtable_stage2_unmap(struct kvm_pgtable *pgt, u64 addr, u64 size) in pkvm_pgtable_stage2_unmap() 401 int pkvm_pgtable_stage2_wrprotect(struct kvm_pgtable *pgt, u64 addr, u64 size) in pkvm_pgtable_stage2_wrprotect() 418 int pkvm_pgtable_stage2_flush(struct kvm_pgtable *pgt, u64 addr, u64 size) in pkvm_pgtable_stage2_flush() 430 bool pkvm_pgtable_stage2_test_clear_young(struct kvm_pgtable *pgt, u64 addr, u64 size, bool mkold) in pkvm_pgtable_stage2_test_clear_young() 445 int pkvm_pgtable_stage2_relax_perms(struct kvm_pgtable *pgt, u64 addr, enum kvm_pgtable_prot prot, in pkvm_pgtable_stage2_relax_perms() 451 void pkvm_pgtable_stage2_mkyoung(struct kvm_pgtable *pgt, u64 addr, in pkvm_pgtable_stage2_mkyoung() 462 kvm_pte_t *pkvm_pgtable_stage2_create_unlinked(struct kvm_pgtable *pgt, u64 phys, s8 level, in pkvm_pgtable_stage2_create_unlinked() [all …]
|
| H A D | ptdump.c | 100 struct kvm_pgtable *pgtable = mmu->pgt; in kvm_ptdump_parser_create() 196 struct kvm_pgtable *pgtable = m->private; in kvm_pgtable_range_show() 204 struct kvm_pgtable *pgtable = m->private; in kvm_pgtable_levels_show() 214 struct kvm_pgtable *pgtable; in kvm_pgtable_debugfs_open()
|
| H A D | mmu.c | 26 static struct kvm_pgtable *hyp_pgtable; 63 int (*fn)(struct kvm_pgtable *, u64, u64), in stage2_apply_range() argument 71 struct kvm_pgtable *pgt = mmu->pgt; in stage2_apply_range() 123 struct kvm_pgtable *pgt; in kvm_mmu_split_huge_pages() 825 struct kvm_pgtable pgt = { in get_user_mapping_size() 929 struct kvm_pgtable *pgt; in kvm_init_stage2_mmu() 1072 struct kvm_pgtable *pgt = NULL; in kvm_free_stage2_pgd() 1151 struct kvm_pgtable *pgt = mmu->pgt; in kvm_phys_addr_ioremap() 1489 struct kvm_pgtable *pgt; in user_mem_abort()
|
| /linux-6.15/arch/arm64/kvm/hyp/include/nvhe/ |
| H A D | mm.h | 13 extern struct kvm_pgtable pkvm_pgtable;
|
| H A D | pkvm.h | 41 struct kvm_pgtable pgt;
|
| H A D | mem_protect.h | 20 struct kvm_pgtable pgt;
|
| /linux-6.15/arch/arm64/kvm/hyp/nvhe/ |
| H A D | mm.c | 21 struct kvm_pgtable pkvm_pgtable;
|
| H A D | mem_protect.c | 331 struct kvm_pgtable *pgt = &host_mmu.pgt; in host_stage2_unmap_dev_all() 606 static int check_page_state_range(struct kvm_pgtable *pgt, u64 addr, u64 size, in check_page_state_range()
|