/kernel/linux/linux-6.6/include/linux/ |
H A D | mmu_notifier.h | 13 struct mmu_notifier; 88 void (*release)(struct mmu_notifier *subscription, 100 int (*clear_flush_young)(struct mmu_notifier *subscription, 110 int (*clear_young)(struct mmu_notifier *subscription, 121 int (*test_young)(struct mmu_notifier *subscription, 129 void (*change_pte)(struct mmu_notifier *subscription, 184 int (*invalidate_range_start)(struct mmu_notifier *subscription, 186 void (*invalidate_range_end)(struct mmu_notifier *subscription, 207 struct mmu_notifier *subscription, 214 * lifetime of the mmu_notifier memor 237 struct mmu_notifier { global() struct [all...] |
/kernel/linux/linux-5.10/include/linux/ |
H A D | mmu_notifier.h | 13 struct mmu_notifier; 82 void (*release)(struct mmu_notifier *subscription, 94 int (*clear_flush_young)(struct mmu_notifier *subscription, 104 int (*clear_young)(struct mmu_notifier *subscription, 115 int (*test_young)(struct mmu_notifier *subscription, 123 void (*change_pte)(struct mmu_notifier *subscription, 178 int (*invalidate_range_start)(struct mmu_notifier *subscription, 180 void (*invalidate_range_end)(struct mmu_notifier *subscription, 195 * discussion on this see Documentation/vm/mmu_notifier.rst 201 void (*invalidate_range)(struct mmu_notifier *subscriptio 231 struct mmu_notifier { global() struct [all...] |
H A D | hmm.h | 19 #include <linux/mmu_notifier.h>
|
/kernel/linux/linux-5.10/mm/ |
H A D | mmu_notifier.c | 3 * linux/mm/mmu_notifier.c 11 #include <linux/mmu_notifier.h> 302 struct mmu_notifier *subscription; in mn_hlist_release() 324 struct mmu_notifier, hlist); in mn_hlist_release() 369 struct mmu_notifier *subscription; in __mmu_notifier_clear_flush_young() 389 struct mmu_notifier *subscription; in __mmu_notifier_clear_young() 408 struct mmu_notifier *subscription; in __mmu_notifier_test_young() 430 struct mmu_notifier *subscription; in __mmu_notifier_change_pte() 479 struct mmu_notifier *subscription; in mn_hlist_invalidate_range_start() 556 struct mmu_notifier *subscriptio in mn_hlist_invalidate_end() [all...] |
/kernel/linux/linux-6.6/mm/ |
H A D | mmu_notifier.c | 3 * linux/mm/mmu_notifier.c 11 #include <linux/mmu_notifier.h> 302 struct mmu_notifier *subscription; in mn_hlist_release() 324 struct mmu_notifier, hlist); in mn_hlist_release() 369 struct mmu_notifier *subscription; in __mmu_notifier_clear_flush_young() 389 struct mmu_notifier *subscription; in __mmu_notifier_clear_young() 408 struct mmu_notifier *subscription; in __mmu_notifier_test_young() 430 struct mmu_notifier *subscription; in __mmu_notifier_change_pte() 479 struct mmu_notifier *subscription; in mn_hlist_invalidate_range_start() 556 struct mmu_notifier *subscriptio in mn_hlist_invalidate_end() [all...] |
/kernel/linux/linux-5.10/drivers/misc/sgi-gru/ |
H A D | grutlbpurge.c | 209 static int gru_invalidate_range_start(struct mmu_notifier *mn, in gru_invalidate_range_start() 224 static void gru_invalidate_range_end(struct mmu_notifier *mn, in gru_invalidate_range_end() 238 static struct mmu_notifier *gru_alloc_notifier(struct mm_struct *mm) in gru_alloc_notifier() 252 static void gru_free_notifier(struct mmu_notifier *mn) in gru_free_notifier() 267 struct mmu_notifier *mn; in gru_register_mmu_notifier()
|
/kernel/linux/linux-6.6/drivers/misc/sgi-gru/ |
H A D | grutlbpurge.c | 209 static int gru_invalidate_range_start(struct mmu_notifier *mn, in gru_invalidate_range_start() 224 static void gru_invalidate_range_end(struct mmu_notifier *mn, in gru_invalidate_range_end() 238 static struct mmu_notifier *gru_alloc_notifier(struct mm_struct *mm) in gru_alloc_notifier() 252 static void gru_free_notifier(struct mmu_notifier *mn) in gru_free_notifier() 267 struct mmu_notifier *mn; in gru_register_mmu_notifier()
|
/kernel/linux/linux-6.6/arch/x86/kernel/cpu/sgx/ |
H A D | encl.h | 14 #include <linux/mmu_notifier.h> 48 struct mmu_notifier mmu_notifier; member
|
H A D | driver.h | 7 #include <linux/mmu_notifier.h>
|
H A D | encl.c | 773 static void sgx_mmu_notifier_release(struct mmu_notifier *mn, in sgx_mmu_notifier_release() 776 struct sgx_encl_mm *encl_mm = container_of(mn, struct sgx_encl_mm, mmu_notifier); in sgx_mmu_notifier_release() 800 static void sgx_mmu_notifier_free(struct mmu_notifier *mn) in sgx_mmu_notifier_free() 802 struct sgx_encl_mm *encl_mm = container_of(mn, struct sgx_encl_mm, mmu_notifier); in sgx_mmu_notifier_free() 864 encl_mm->mmu_notifier.ops = &sgx_mmu_notifier_ops; in sgx_encl_mm_add() 866 ret = __mmu_notifier_register(&encl_mm->mmu_notifier, mm); in sgx_encl_mm_add()
|
/kernel/linux/linux-5.10/drivers/gpu/drm/nouveau/ |
H A D | nouveau_svm.h | 4 #include <linux/mmu_notifier.h> 10 struct mmu_notifier notifier;
|
/kernel/linux/linux-6.6/drivers/gpu/drm/nouveau/ |
H A D | nouveau_svm.h | 4 #include <linux/mmu_notifier.h> 10 struct mmu_notifier notifier;
|
/kernel/linux/linux-6.6/drivers/misc/ocxl/ |
H A D | link.c | 8 #include <linux/mmu_notifier.h> 49 struct mmu_notifier mmu_notifier; member 494 static void arch_invalidate_secondary_tlbs(struct mmu_notifier *mn, in arch_invalidate_secondary_tlbs() 498 struct pe_data *pe_data = container_of(mn, struct pe_data, mmu_notifier); in arch_invalidate_secondary_tlbs() 572 pe_data->mmu_notifier.ops = &ocxl_mmu_notifier_ops; in ocxl_link_add_pe() 596 mmu_notifier_register(&pe_data->mmu_notifier, mm); in ocxl_link_add_pe() 733 mmu_notifier_unregister(&pe_data->mmu_notifier, in ocxl_link_remove_pe()
|
/kernel/linux/linux-6.6/drivers/iommu/arm/arm-smmu-v3/ |
H A D | arm-smmu-v3-sva.c | 8 #include <linux/mmu_notifier.h> 17 struct mmu_notifier mn; 198 static void arm_smmu_mm_arch_invalidate_secondary_tlbs(struct mmu_notifier *mn, in arm_smmu_mm_arch_invalidate_secondary_tlbs() 235 static void arm_smmu_mm_release(struct mmu_notifier *mn, struct mm_struct *mm) in arm_smmu_mm_release() 259 static void arm_smmu_mmu_notifier_free(struct mmu_notifier *mn) in arm_smmu_mmu_notifier_free()
|
/kernel/linux/linux-5.10/drivers/infiniband/hw/hfi1/ |
H A D | mmu_rb.c | 50 #include <linux/mmu_notifier.h> 59 static int mmu_notifier_range_start(struct mmu_notifier *, 297 static int mmu_notifier_range_start(struct mmu_notifier *mn, in mmu_notifier_range_start()
|
H A D | mmu_rb.h | 78 struct mmu_notifier mn;
|
/kernel/linux/linux-6.6/drivers/infiniband/hw/hfi1/ |
H A D | mmu_rb.c | 9 #include <linux/mmu_notifier.h> 18 static int mmu_notifier_range_start(struct mmu_notifier *, 261 static int mmu_notifier_range_start(struct mmu_notifier *mn, in mmu_notifier_range_start()
|
H A D | mmu_rb.h | 33 * struct mmu_notifier is 56 bytes, and spinlock_t is 4 bytes, so 39 struct mmu_notifier mn;
|
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_hmm.h | 32 #include <linux/mmu_notifier.h>
|
/kernel/linux/linux-6.6/arch/s390/kvm/ |
H A D | pv.c | 18 #include <linux/mmu_notifier.h> 535 static void kvm_s390_pv_mmu_notifier_release(struct mmu_notifier *subscription, in kvm_s390_pv_mmu_notifier_release() 538 struct kvm *kvm = container_of(subscription, struct kvm, arch.pv.mmu_notifier); in kvm_s390_pv_mmu_notifier_release() 603 if (kvm->arch.pv.mmu_notifier.ops != &kvm_s390_pv_mmu_notifier_ops) { in kvm_s390_pv_init_vm() 604 kvm->arch.pv.mmu_notifier.ops = &kvm_s390_pv_mmu_notifier_ops; in kvm_s390_pv_init_vm() 605 mmu_notifier_register(&kvm->arch.pv.mmu_notifier, kvm->mm); in kvm_s390_pv_init_vm()
|
/kernel/linux/linux-5.10/drivers/xen/ |
H A D | gntdev-common.h | 16 #include <linux/mmu_notifier.h>
|
/kernel/linux/linux-5.10/drivers/gpu/drm/radeon/ |
H A D | radeon_mn.c | 33 #include <linux/mmu_notifier.h>
|
/kernel/linux/linux-6.6/drivers/xen/ |
H A D | gntdev-common.h | 16 #include <linux/mmu_notifier.h>
|
/kernel/linux/linux-6.6/drivers/gpu/drm/radeon/ |
H A D | radeon_mn.c | 33 #include <linux/mmu_notifier.h>
|
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdkfd/ |
H A D | kfd_process.c | 1012 static void kfd_process_free_notifier(struct mmu_notifier *mn) in kfd_process_free_notifier() 1014 kfd_unref_process(container_of(mn, struct kfd_process, mmu_notifier)); in kfd_process_free_notifier() 1017 static void kfd_process_notifier_release(struct mmu_notifier *mn, in kfd_process_notifier_release() 1025 * mmu_notifier srcu is read locked in kfd_process_notifier_release() 1027 p = container_of(mn, struct kfd_process, mmu_notifier); in kfd_process_notifier_release() 1071 mmu_notifier_put(&p->mmu_notifier); in kfd_process_notifier_release() 1184 process->mmu_notifier.ops = &kfd_process_mmu_notifier_ops; in create_process() 1185 err = mmu_notifier_register(&process->mmu_notifier, process->mm); in create_process()
|