| /linux/arch/arm64/include/asm/ |
| H A D | kvm_pgtable.h | 434 struct kvm_pgtable { struct 459 int kvm_pgtable_hyp_init(struct kvm_pgtable *pgt, u32 va_bits, argument 469 void kvm_pgtable_hyp_destroy(struct kvm_pgtable *pgt); 490 int kvm_pgtable_hyp_map(struct kvm_pgtable *pgt, u64 addr, u64 size, u64 phys, 512 u64 kvm_pgtable_hyp_unmap(struct kvm_pgtable *pgt, u64 addr, u64 size); 549 int __kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, 554 static inline int kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in kvm_pgtable_stage2_init() 567 void kvm_pgtable_stage2_destroy(struct kvm_pgtable *pgt); 578 void kvm_pgtable_stage2_destroy_range(struct kvm_pgtable *pgt, 587 void kvm_pgtable_stage2_destroy_pgd(struct kvm_pgtable *pgt); [all …]
|
| H A D | kvm_pkvm.h | 181 int pkvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, 183 void pkvm_pgtable_stage2_destroy_range(struct kvm_pgtable *pgt, 185 void pkvm_pgtable_stage2_destroy_pgd(struct kvm_pgtable *pgt); 186 int pkvm_pgtable_stage2_map(struct kvm_pgtable *pgt, u64 addr, u64 size, u64 phys, 189 int pkvm_pgtable_stage2_unmap(struct kvm_pgtable *pgt, u64 addr, u64 size); 190 int pkvm_pgtable_stage2_wrprotect(struct kvm_pgtable *pgt, u64 addr, u64 size); 191 int pkvm_pgtable_stage2_flush(struct kvm_pgtable *pgt, u64 addr, u64 size); 192 bool pkvm_pgtable_stage2_test_clear_young(struct kvm_pgtable *pgt, u64 addr, u64 size, bool mkold); 193 int pkvm_pgtable_stage2_relax_perms(struct kvm_pgtable *pgt, u64 addr, enum kvm_pgtable_prot prot, 195 void pkvm_pgtable_stage2_mkyoung(struct kvm_pgtable *pgt, u64 addr, [all …]
|
| H A D | kvm_host.h | 167 struct kvm_pgtable *pgt;
|
| /linux/arch/arm64/kvm/ |
| H A D | pkvm.c | 316 int pkvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in pkvm_pgtable_stage2_init() 325 static int __pkvm_pgtable_stage2_unmap(struct kvm_pgtable *pgt, u64 start, u64 end) in __pkvm_pgtable_stage2_unmap() 347 void pkvm_pgtable_stage2_destroy_range(struct kvm_pgtable *pgt, in pkvm_pgtable_stage2_destroy_range() 353 void pkvm_pgtable_stage2_destroy_pgd(struct kvm_pgtable *pgt) in pkvm_pgtable_stage2_destroy_pgd() 359 int pkvm_pgtable_stage2_map(struct kvm_pgtable *pgt, u64 addr, u64 size, in pkvm_pgtable_stage2_map() 405 int pkvm_pgtable_stage2_unmap(struct kvm_pgtable *pgt, u64 addr, u64 size) in pkvm_pgtable_stage2_unmap() 412 int pkvm_pgtable_stage2_wrprotect(struct kvm_pgtable *pgt, u64 addr, u64 size) in pkvm_pgtable_stage2_wrprotect() 430 int pkvm_pgtable_stage2_flush(struct kvm_pgtable *pgt, u64 addr, u64 size) in pkvm_pgtable_stage2_flush() 443 bool pkvm_pgtable_stage2_test_clear_young(struct kvm_pgtable *pgt, u64 addr, u64 size, bool mkold) in pkvm_pgtable_stage2_test_clear_young() 458 int pkvm_pgtable_stage2_relax_perms(struct kvm_pgtable *pgt, u64 addr, enum kvm_pgtable_prot prot, in pkvm_pgtable_stage2_relax_perms() [all …]
|
| H A D | ptdump.c | 119 struct kvm_pgtable *pgtable = mmu->pgt; in kvm_ptdump_parser_create() 215 struct kvm_pgtable *pgtable = m->private; in kvm_pgtable_range_show() 223 struct kvm_pgtable *pgtable = m->private; in kvm_pgtable_levels_show() 233 struct kvm_pgtable *pgtable; in kvm_pgtable_debugfs_open()
|
| H A D | mmu.c | 27 static struct kvm_pgtable *hyp_pgtable; 64 int (*fn)(struct kvm_pgtable *, u64, u64), in stage2_apply_range() argument 72 struct kvm_pgtable *pgt = mmu->pgt; in stage2_apply_range() 124 struct kvm_pgtable *pgt; in kvm_mmu_split_huge_pages() 821 struct kvm_pgtable pgt = { in get_user_mapping_size() 917 static void stage2_destroy_range(struct kvm_pgtable *pgt, phys_addr_t addr, in stage2_destroy_range() 931 static void kvm_stage2_destroy(struct kvm_pgtable *pgt) in kvm_stage2_destroy() 957 struct kvm_pgtable *pgt; in kvm_init_stage2_mmu() 1100 struct kvm_pgtable *pgt = NULL; in kvm_free_stage2_pgd() 1183 struct kvm_pgtable *pgt = mmu->pgt; in kvm_phys_addr_ioremap() [all …]
|
| /linux/arch/arm64/kvm/hyp/ |
| H A D | pgtable.c | 56 static u32 kvm_pgd_page_idx(struct kvm_pgtable *pgt, u64 addr) in kvm_pgd_page_idx() 66 struct kvm_pgtable pgt = { in kvm_pgd_pages() 245 static int _kvm_pgtable_walk(struct kvm_pgtable *pgt, struct kvm_pgtable_walk_data *data) in _kvm_pgtable_walk() 268 int kvm_pgtable_walk(struct kvm_pgtable *pgt, u64 addr, u64 size, in kvm_pgtable_walk() 305 int kvm_pgtable_get_leaf(struct kvm_pgtable *pgt, u64 addr, in kvm_pgtable_get_leaf() 433 int kvm_pgtable_hyp_map(struct kvm_pgtable *pgt, u64 addr, u64 size, u64 phys, in kvm_pgtable_hyp_map() 496 u64 kvm_pgtable_hyp_unmap(struct kvm_pgtable *pgt, u64 addr, u64 size) in kvm_pgtable_hyp_unmap() 512 int kvm_pgtable_hyp_init(struct kvm_pgtable *pgt, u32 va_bits, in kvm_pgtable_hyp_init() 551 void kvm_pgtable_hyp_destroy(struct kvm_pgtable *pgt) in kvm_pgtable_hyp_destroy() 634 static bool stage2_has_fwb(struct kvm_pgtable *pgt) in stage2_has_fwb() [all …]
|
| /linux/arch/arm64/kvm/hyp/include/nvhe/ |
| H A D | mm.h | 13 extern struct kvm_pgtable pkvm_pgtable;
|
| H A D | mem_protect.h | 20 struct kvm_pgtable pgt;
|
| /linux/arch/arm64/kvm/hyp/nvhe/ |
| H A D | mm.c | 21 struct kvm_pgtable pkvm_pgtable;
|
| H A D | mem_protect.c | 355 struct kvm_pgtable *pgt = &host_mmu.pgt; in host_stage2_unmap_dev_all() 646 static int check_page_state_range(struct kvm_pgtable *pgt, u64 addr, u64 size, in check_page_state_range()
|