| /linux/arch/arm64/kvm/hyp/nvhe/ |
| H A D | tlb.c | 14 struct kvm_s2_mmu *mmu; 19 static void enter_vmid_context(struct kvm_s2_mmu *mmu, in enter_vmid_context() 23 struct kvm_s2_mmu *host_s2_mmu = &host_mmu.arch.mmu; in enter_vmid_context() 120 struct kvm_s2_mmu *mmu = cxt->mmu; in exit_vmid_context() 148 void __kvm_tlb_flush_vmid_ipa(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_ipa() 178 void __kvm_tlb_flush_vmid_ipa_nsh(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_ipa_nsh() 208 void __kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_range() 235 void __kvm_tlb_flush_vmid(struct kvm_s2_mmu *mmu) in __kvm_tlb_flush_vmid() 249 void __kvm_flush_cpu_context(struct kvm_s2_mmu *mmu) in __kvm_flush_cpu_context()
|
| H A D | hyp-main.c | 391 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_ipa() 400 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_ipa_nsh() 410 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_range() 419 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid() 442 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_flush_cpu_context()
|
| H A D | switch.c | 246 struct kvm_s2_mmu *mmu; in __kvm_vcpu_run()
|
| H A D | mem_protect.c | 145 struct kvm_s2_mmu *mmu = &host_mmu.arch.mmu; in kvm_host_prepare_stage2() 259 struct kvm_s2_mmu *mmu = &vm->kvm.arch.mmu; in kvm_guest_prepare_stage2() 318 struct kvm_s2_mmu *mmu = &host_mmu.arch.mmu; in __pkvm_prot_finalize()
|
| H A D | pkvm.c | 419 struct kvm_s2_mmu *mmu = &hyp_vm->kvm.arch.mmu; in init_pkvm_hyp_vm()
|
| /linux/arch/arm64/kvm/hyp/vhe/ |
| H A D | tlb.c | 14 struct kvm_s2_mmu *mmu; 20 static void enter_vmid_context(struct kvm_s2_mmu *mmu, in enter_vmid_context() 92 void __kvm_tlb_flush_vmid_ipa(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_ipa() 124 void __kvm_tlb_flush_vmid_ipa_nsh(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_ipa_nsh() 156 void __kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_range() 185 void __kvm_tlb_flush_vmid(struct kvm_s2_mmu *mmu) in __kvm_tlb_flush_vmid() 201 void __kvm_flush_cpu_context(struct kvm_s2_mmu *mmu) in __kvm_flush_cpu_context() 232 int __kvm_tlbi_s1e2(struct kvm_s2_mmu *mmu, u64 va, u64 sys_encoding) in __kvm_tlbi_s1e2()
|
| /linux/arch/arm64/include/asm/ |
| H A D | kvm_asm.h | 221 struct kvm_s2_mmu; 236 extern void __kvm_flush_cpu_context(struct kvm_s2_mmu *mmu); 237 extern void __kvm_tlb_flush_vmid_ipa(struct kvm_s2_mmu *mmu, phys_addr_t ipa, 239 extern void __kvm_tlb_flush_vmid_ipa_nsh(struct kvm_s2_mmu *mmu, 242 extern void __kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, 244 extern void __kvm_tlb_flush_vmid(struct kvm_s2_mmu *mmu); 246 extern int __kvm_tlbi_s1e2(struct kvm_s2_mmu *mmu, u64 va, u64 sys_encoding);
|
| H A D | kvm_nested.h | 70 extern void kvm_init_nested_s2_mmu(struct kvm_s2_mmu *mmu); 71 extern struct kvm_s2_mmu *lookup_s2_mmu(struct kvm_vcpu *vcpu); 77 void (*)(struct kvm_s2_mmu *, 170 unsigned long compute_tlb_inval_range(struct kvm_s2_mmu *mmu, u64 val);
|
| H A D | kvm_pgtable.h | 449 struct kvm_s2_mmu *mmu; 550 int __kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, 555 static inline int kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in kvm_pgtable_stage2_init() 880 void kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu,
|
| H A D | kvm_host.h | 153 struct kvm_s2_mmu { struct 296 struct kvm_s2_mmu mmu; 311 struct kvm_s2_mmu *nested_mmus; 842 struct kvm_s2_mmu *hw_mmu;
|
| /linux/arch/arm64/kvm/ |
| H A D | nested.c | 53 static int init_nested_s2_mmu(struct kvm *kvm, struct kvm_s2_mmu *mmu) in init_nested_s2_mmu() 71 struct kvm_s2_mmu *tmp; in kvm_vcpu_init_nested() 513 static u8 get_guest_mapping_ttl(struct kvm_s2_mmu *mmu, u64 addr) in get_guest_mapping_ttl() 583 unsigned long compute_tlb_inval_range(struct kvm_s2_mmu *mmu, u64 val) in compute_tlb_inval_range() 640 void (*tlbi_callback)(struct kvm_s2_mmu *, in kvm_s2_mmu_iterate_by_vmid() argument 646 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_s2_mmu_iterate_by_vmid() 658 struct kvm_s2_mmu *lookup_s2_mmu(struct kvm_vcpu *vcpu) in lookup_s2_mmu() 688 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in lookup_s2_mmu() 707 static struct kvm_s2_mmu *get_s2_mmu_nested(struct kvm_vcpu *vcpu) in get_s2_mmu_nested() 710 struct kvm_s2_mmu *s2_mmu; in get_s2_mmu_nested() [all …]
|
| H A D | mmu.c | 62 static int stage2_apply_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, in stage2_apply_range() 328 static void __unmap_stage2_range(struct kvm_s2_mmu *mmu, phys_addr_t start, u64 size, in __unmap_stage2_range() 340 void kvm_stage2_unmap_range(struct kvm_s2_mmu *mmu, phys_addr_t start, in kvm_stage2_unmap_range() 346 void kvm_stage2_flush_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, phys_addr_t end) in kvm_stage2_flush_range() 875 static int kvm_init_ipa_range(struct kvm_s2_mmu *mmu, unsigned long type) in kvm_init_ipa_range() 954 int kvm_init_stage2_mmu(struct kvm *kvm, struct kvm_s2_mmu *mmu, unsigned long type) in kvm_init_stage2_mmu() 1097 void kvm_free_stage2_pgd(struct kvm_s2_mmu *mmu) in kvm_free_stage2_pgd() 1183 struct kvm_s2_mmu *mmu = &kvm->arch.mmu; in kvm_phys_addr_ioremap() 1221 void kvm_stage2_wp_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, phys_addr_t end) in kvm_stage2_wp_range() 1949 struct kvm_s2_mmu *mmu; in handle_access_fault()
|
| H A D | ptdump.c | 118 struct kvm_s2_mmu *mmu = &kvm->arch.mmu; in kvm_ptdump_parser_create() 153 struct kvm_s2_mmu *mmu = &kvm->arch.mmu; in kvm_ptdump_guest_show()
|
| 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()
|
| H A D | sys_regs.c | 3903 static void s2_mmu_unmap_range(struct kvm_s2_mmu *mmu, in s2_mmu_unmap_range() 3985 static void s2_mmu_unmap_ipa(struct kvm_s2_mmu *mmu, in s2_mmu_unmap_ipa() 4031 static void s2_mmu_tlbi_s1e1(struct kvm_s2_mmu *mmu, in s2_mmu_tlbi_s1e1()
|
| H A D | at.c | 1329 struct kvm_s2_mmu *mmu; in __kvm_at_s1e01_fast()
|
| H A D | arm.c | 632 struct kvm_s2_mmu *mmu; in kvm_arch_vcpu_load()
|
| /linux/arch/arm64/kvm/hyp/ |
| H A D | pgtable.c | 589 struct kvm_s2_mmu *mmu; 650 void kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, in kvm_tlb_flush_vmid_range() 829 struct kvm_s2_mmu *mmu) in stage2_try_break_pte() 893 struct kvm_s2_mmu *mmu, in stage2_unmap_put_pte() 1150 struct kvm_s2_mmu *mmu = pgt->mmu; in stage2_unmap_walker() 1485 struct kvm_s2_mmu *mmu; in stage2_split_walker() 1524 mmu = container_of(mc, struct kvm_s2_mmu, split_page_cache); in stage2_split_walker() 1563 int __kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in __kvm_pgtable_stage2_init()
|