| /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() 177 void __kvm_tlb_flush_vmid_ipa_nsh(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_ipa_nsh() 206 void __kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_range() 233 void __kvm_tlb_flush_vmid(struct kvm_s2_mmu *mmu) in __kvm_tlb_flush_vmid() 247 void __kvm_flush_cpu_context(struct kvm_s2_mmu *mmu) in __kvm_flush_cpu_context()
|
| H A D | hyp-main.c | 390 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_ipa() 399 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_ipa_nsh() 409 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_range() 418 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid() 437 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_flush_cpu_context()
|
| H A D | mem_protect.c | 161 struct kvm_s2_mmu *mmu = &host_mmu.arch.mmu; in kvm_host_prepare_stage2() 275 struct kvm_s2_mmu *mmu = &vm->kvm.arch.mmu; in kvm_guest_prepare_stage2() 334 struct kvm_s2_mmu *mmu = &host_mmu.arch.mmu; in __pkvm_prot_finalize()
|
| H A D | pkvm.c | 428 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() 123 void __kvm_tlb_flush_vmid_ipa_nsh(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_ipa_nsh() 154 void __kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, in __kvm_tlb_flush_vmid_range() 183 void __kvm_tlb_flush_vmid(struct kvm_s2_mmu *mmu) in __kvm_tlb_flush_vmid() 199 void __kvm_flush_cpu_context(struct kvm_s2_mmu *mmu) in __kvm_flush_cpu_context() 230 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 | 248 struct kvm_s2_mmu; 263 extern void __kvm_flush_cpu_context(struct kvm_s2_mmu *mmu); 264 extern void __kvm_tlb_flush_vmid_ipa(struct kvm_s2_mmu *mmu, phys_addr_t ipa, 266 extern void __kvm_tlb_flush_vmid_ipa_nsh(struct kvm_s2_mmu *mmu, 269 extern void __kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, 271 extern void __kvm_tlb_flush_vmid(struct kvm_s2_mmu *mmu); 273 extern int __kvm_tlbi_s1e2(struct kvm_s2_mmu *mmu, u64 va, u64 sys_encoding);
|
| H A D | kvm_nested.h | 71 extern void kvm_init_nested_s2_mmu(struct kvm_s2_mmu *mmu); 72 extern struct kvm_s2_mmu *lookup_s2_mmu(struct kvm_vcpu *vcpu); 78 void (*)(struct kvm_s2_mmu *, 171 unsigned long compute_tlb_inval_range(struct kvm_s2_mmu *mmu, u64 val);
|
| H A D | kvm_host.h | 153 struct kvm_s2_mmu { struct 310 struct kvm_s2_mmu mmu; 325 struct kvm_s2_mmu *nested_mmus; 878 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() 349 void kvm_stage2_flush_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, phys_addr_t end) in kvm_stage2_flush_range() 878 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() 1098 void kvm_free_stage2_pgd(struct kvm_s2_mmu *mmu) in kvm_free_stage2_pgd() 1184 struct kvm_s2_mmu *mmu = &kvm->arch.mmu; in kvm_phys_addr_ioremap() 1222 void kvm_stage2_wp_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, phys_addr_t end) in kvm_stage2_wp_range() 2115 struct kvm_s2_mmu *mmu; in handle_access_fault()
|
| H A D | sys_regs.c | 4009 static void s2_mmu_unmap_range(struct kvm_s2_mmu *mmu, in s2_mmu_unmap_range() 4091 static void s2_mmu_unmap_ipa(struct kvm_s2_mmu *mmu, in s2_mmu_unmap_ipa() 4137 static void s2_mmu_tlbi_s1e1(struct kvm_s2_mmu *mmu, in s2_mmu_tlbi_s1e1()
|
| H A D | at.c | 1330 struct kvm_s2_mmu *mmu; in __kvm_at_s1e01_fast()
|
| H A D | arm.c | 650 struct kvm_s2_mmu *mmu; in kvm_arch_vcpu_load()
|
| /linux/arch/arm64/kvm/hyp/ |
| H A D | pgtable.c | 584 struct kvm_s2_mmu *mmu; 645 void kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, in kvm_tlb_flush_vmid_range() 828 struct kvm_s2_mmu *mmu) in stage2_try_break_pte() 895 struct kvm_s2_mmu *mmu, in stage2_unmap_put_pte() 1157 struct kvm_s2_mmu *mmu = pgt->mmu; in stage2_unmap_walker() 1492 struct kvm_s2_mmu *mmu; in stage2_split_walker() 1531 mmu = container_of(mc, struct kvm_s2_mmu, split_page_cache); in stage2_split_walker() 1570 int __kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in __kvm_pgtable_stage2_init()
|