Home
last modified time | relevance | path

Searched refs:kvm_s2_mmu (Results 1 – 20 of 20) sorted by relevance

/linux-6.15/arch/arm64/kvm/hyp/nvhe/
H A Dtlb.c14 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 Dhyp-main.c384 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_ipa()
393 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_ipa_nsh()
403 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid_range()
412 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_tlb_flush_vmid()
435 DECLARE_REG(struct kvm_s2_mmu *, mmu, host_ctxt, 1); in handle___kvm_flush_cpu_context()
H A Dmem_protect.c140 struct kvm_s2_mmu *mmu = &host_mmu.arch.mmu; in kvm_host_prepare_stage2()
234 struct kvm_s2_mmu *mmu = &vm->kvm.arch.mmu; in kvm_guest_prepare_stage2()
294 struct kvm_s2_mmu *mmu = &host_mmu.arch.mmu; in __pkvm_prot_finalize()
H A Dswitch.c287 struct kvm_s2_mmu *mmu; in __kvm_vcpu_run()
H A Dpkvm.c463 struct kvm_s2_mmu *mmu = &hyp_vm->kvm.arch.mmu; in insert_vm_table_entry()
/linux-6.15/arch/arm64/include/asm/
H A Dkvm_mmu.h171 void kvm_stage2_unmap_range(struct kvm_s2_mmu *mmu, phys_addr_t start,
173 void kvm_stage2_flush_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, phys_addr_t end);
174 void kvm_stage2_wp_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, phys_addr_t end);
177 int kvm_init_stage2_mmu(struct kvm *kvm, struct kvm_s2_mmu *mmu, unsigned long type);
179 void kvm_free_stage2_pgd(struct kvm_s2_mmu *mmu);
303 static __always_inline u64 kvm_get_vttbr(struct kvm_s2_mmu *mmu) in kvm_get_vttbr()
319 static __always_inline void __load_stage2(struct kvm_s2_mmu *mmu, in __load_stage2()
333 static inline struct kvm *kvm_s2_mmu_to_kvm(struct kvm_s2_mmu *mmu) in kvm_s2_mmu_to_kvm()
344 static inline bool kvm_s2_mmu_valid(struct kvm_s2_mmu *mmu) in kvm_s2_mmu_valid()
349 static inline bool kvm_is_nested_s2_mmu(struct kvm *kvm, struct kvm_s2_mmu *mmu) in kvm_is_nested_s2_mmu()
H A Dkvm_asm.h219 struct kvm_s2_mmu;
234 extern void __kvm_flush_cpu_context(struct kvm_s2_mmu *mmu);
235 extern void __kvm_tlb_flush_vmid_ipa(struct kvm_s2_mmu *mmu, phys_addr_t ipa,
237 extern void __kvm_tlb_flush_vmid_ipa_nsh(struct kvm_s2_mmu *mmu,
240 extern void __kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu,
242 extern void __kvm_tlb_flush_vmid(struct kvm_s2_mmu *mmu);
244 extern int __kvm_tlbi_s1e2(struct kvm_s2_mmu *mmu, u64 va, u64 sys_encoding);
H A Dkvm_nested.h70 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 *,
133 unsigned long compute_tlb_inval_range(struct kvm_s2_mmu *mmu, u64 val);
H A Dkvm_pgtable.h428 struct kvm_s2_mmu *mmu;
529 int __kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu,
534 static inline int kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in kvm_pgtable_stage2_init()
839 void kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu,
H A Dkvm_pkvm.h172 int pkvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu,
H A Dkvm_host.h151 struct kvm_s2_mmu { struct
287 struct kvm_s2_mmu mmu;
302 struct kvm_s2_mmu *nested_mmus;
751 struct kvm_s2_mmu *hw_mmu;
/linux-6.15/arch/arm64/kvm/hyp/vhe/
H A Dtlb.c14 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-6.15/arch/arm64/kvm/
H A Dnested.c51 struct kvm_s2_mmu *tmp; in kvm_vcpu_init_nested()
540 void (*tlbi_callback)(struct kvm_s2_mmu *, in kvm_s2_mmu_iterate_by_vmid() argument
546 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_s2_mmu_iterate_by_vmid()
588 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in lookup_s2_mmu()
610 struct kvm_s2_mmu *s2_mmu; in get_s2_mmu_nested()
668 void kvm_init_nested_s2_mmu(struct kvm_s2_mmu *mmu) in kvm_init_nested_s2_mmu()
753 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_nested_s2_wp()
767 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_nested_s2_unmap()
781 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_nested_s2_flush()
793 struct kvm_s2_mmu *mmu = &kvm->arch.nested_mmus[i]; in kvm_arch_flush_shadow_all()
[all …]
H A Dmmu.c61 static int stage2_apply_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, in stage2_apply_range()
332 static void __unmap_stage2_range(struct kvm_s2_mmu *mmu, phys_addr_t start, u64 size, in __unmap_stage2_range()
344 void kvm_stage2_unmap_range(struct kvm_s2_mmu *mmu, phys_addr_t start, in kvm_stage2_unmap_range()
350 void kvm_stage2_flush_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, phys_addr_t end) in kvm_stage2_flush_range()
879 static int kvm_init_ipa_range(struct kvm_s2_mmu *mmu, unsigned long type) in kvm_init_ipa_range()
926 int kvm_init_stage2_mmu(struct kvm *kvm, struct kvm_s2_mmu *mmu, unsigned long type) in kvm_init_stage2_mmu()
1069 void kvm_free_stage2_pgd(struct kvm_s2_mmu *mmu) in kvm_free_stage2_pgd()
1150 struct kvm_s2_mmu *mmu = &kvm->arch.mmu; in kvm_phys_addr_ioremap()
1188 void kvm_stage2_wp_range(struct kvm_s2_mmu *mmu, phys_addr_t addr, phys_addr_t end) in kvm_stage2_wp_range()
1767 struct kvm_s2_mmu *mmu; in handle_access_fault()
H A Dptdump.c99 struct kvm_s2_mmu *mmu = &kvm->arch.mmu; in kvm_ptdump_parser_create()
134 struct kvm_s2_mmu *mmu = &kvm->arch.mmu; in kvm_ptdump_guest_show()
H A Dpkvm.c323 int pkvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in pkvm_pgtable_stage2_init()
H A Dat.c1218 struct kvm_s2_mmu *mmu; in __kvm_at_s1e01_fast()
H A Dsys_regs.c3497 static void s2_mmu_unmap_range(struct kvm_s2_mmu *mmu, in s2_mmu_unmap_range()
3599 static void s2_mmu_unmap_ipa(struct kvm_s2_mmu *mmu, in s2_mmu_unmap_ipa()
3645 static void s2_mmu_tlbi_s1e1(struct kvm_s2_mmu *mmu, in s2_mmu_tlbi_s1e1()
H A Darm.c563 struct kvm_s2_mmu *mmu; in kvm_arch_vcpu_load()
/linux-6.15/arch/arm64/kvm/hyp/
H A Dpgtable.c577 struct kvm_s2_mmu *mmu;
648 void kvm_tlb_flush_vmid_range(struct kvm_s2_mmu *mmu, in kvm_tlb_flush_vmid_range()
778 struct kvm_s2_mmu *mmu) in stage2_try_break_pte()
842 struct kvm_s2_mmu *mmu, in stage2_unmap_put_pte()
1099 struct kvm_s2_mmu *mmu = pgt->mmu; in stage2_unmap_walker()
1429 struct kvm_s2_mmu *mmu; in stage2_split_walker()
1468 mmu = container_of(mc, struct kvm_s2_mmu, split_page_cache); in stage2_split_walker()
1507 int __kvm_pgtable_stage2_init(struct kvm_pgtable *pgt, struct kvm_s2_mmu *mmu, in __kvm_pgtable_stage2_init()