/linux/include/linux/ |
H A D | mmu_notifier.h | 15 struct mmu_interval_notifier; 39 * @MMU_NOTIFY_RELEASE: used during mmu_interval_notifier invalidate to signal 243 bool (*invalidate)(struct mmu_interval_notifier *interval_sub, 248 struct mmu_interval_notifier { struct 299 mmu_interval_read_begin(struct mmu_interval_notifier *interval_sub); 300 int mmu_interval_notifier_insert(struct mmu_interval_notifier *interval_sub, 305 struct mmu_interval_notifier *interval_sub, struct mm_struct *mm, 308 void mmu_interval_notifier_remove(struct mmu_interval_notifier *interval_sub); 324 mmu_interval_set_seq(struct mmu_interval_notifier *interval_sub, in mmu_interval_set_seq() 345 mmu_interval_read_retry(struct mmu_interval_notifier *interval_su 250 opsmmu_interval_notifier global() argument 251 mmmmu_interval_notifier global() argument 252 deferred_itemmmu_interval_notifier global() argument 253 invalidate_seqmmu_interval_notifier global() argument [all...] |
H A D | hmm.h | 14 struct mmu_interval_notifier; 102 * @notifier: a mmu_interval_notifier that includes the start/end 112 struct mmu_interval_notifier *notifier;
|
/linux/mm/ |
H A D | mmu_notifier.c | 86 * no mmu_interval_notifier monitoring the VA. 95 static struct mmu_interval_notifier * 101 struct mmu_interval_notifier *res = NULL; in mn_itree_inv_start_range() 109 res = container_of(node, struct mmu_interval_notifier, in mn_itree_inv_start_range() 118 static struct mmu_interval_notifier * 119 mn_itree_inv_next(struct mmu_interval_notifier *interval_sub, in mn_itree_inv_next() 128 return container_of(node, struct mmu_interval_notifier, interval_tree); in mn_itree_inv_next() 133 struct mmu_interval_notifier *interval_sub; in mn_itree_inv_end() 188 mmu_interval_read_begin(struct mmu_interval_notifier *interval_sub) in mmu_interval_read_begin() 273 struct mmu_interval_notifier *interval_su in mn_itree_release() [all...] |
/linux/drivers/infiniband/hw/hfi1/ |
H A D | user_exp_rcv.h | 19 struct mmu_interval_notifier notifier; 30 struct mmu_interval_notifier notifier;
|
H A D | user_exp_rcv.c | 23 static bool tid_rb_invalidate(struct mmu_interval_notifier *mni, 26 static bool tid_cover_invalidate(struct mmu_interval_notifier *mni, 892 static bool tid_rb_invalidate(struct mmu_interval_notifier *mni, in tid_rb_invalidate() 942 static bool tid_cover_invalidate(struct mmu_interval_notifier *mni, in tid_cover_invalidate()
|
/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_hmm.c | 66 static bool amdgpu_hmm_invalidate_gfx(struct mmu_interval_notifier *mni, in amdgpu_hmm_invalidate_gfx() 103 static bool amdgpu_hmm_invalidate_hsa(struct mmu_interval_notifier *mni, in amdgpu_hmm_invalidate_hsa() 168 int amdgpu_hmm_range_get_pages(struct mmu_interval_notifier *notifier, in amdgpu_hmm_range_get_pages()
|
H A D | amdgpu_hmm.h | 34 int amdgpu_hmm_range_get_pages(struct mmu_interval_notifier *notifier,
|
H A D | amdgpu_amdkfd_gpuvm.c | 2451 int amdgpu_amdkfd_evict_userptr(struct mmu_interval_notifier *mni, in amdgpu_amdkfd_evict_userptr()
|
/linux/drivers/xen/ |
H A D | gntdev-common.h | 52 struct mmu_interval_notifier notifier;
|
H A D | gntdev.c | 547 static bool gntdev_invalidate(struct mmu_interval_notifier *mn, in gntdev_invalidate()
|
/linux/Documentation/translations/zh_CN/mm/ |
H A D | hmm.rst | 116 保持两者同步。想要镜像进程地址空间的设备驱动程序必须从注册 mmu_interval_notifier 119 int mmu_interval_notifier_insert(struct mmu_interval_notifier *interval_sub,
|
/linux/drivers/gpu/drm/radeon/ |
H A D | radeon_mn.c | 49 static bool radeon_mn_invalidate(struct mmu_interval_notifier *mn, in radeon_mn_invalidate()
|
H A D | radeon.h | 507 struct mmu_interval_notifier notifier;
|
/linux/include/rdma/ |
H A D | ib_umem_odp.h | 15 struct mmu_interval_notifier notifier;
|
/linux/drivers/accel/amdxdna/ |
H A D | amdxdna_gem.h | 13 struct mmu_interval_notifier notifier;
|
H A D | amdxdna_gem.c | 102 static bool amdxdna_hmm_invalidate(struct mmu_interval_notifier *mni, in amdxdna_hmm_invalidate()
|
/linux/drivers/gpu/drm/xe/ |
H A D | xe_vm_types.h | 58 struct mmu_interval_notifier notifier;
|
/linux/include/drm/ |
H A D | drm_gpusvm.h | 98 struct mmu_interval_notifier notifier;
|
/linux/drivers/gpu/drm/ |
H A D | drm_gpusvm.c | 378 * @mni: Pointer to the mmu_interval_notifier structure. 389 drm_gpusvm_notifier_invalidate(struct mmu_interval_notifier *mni, in drm_gpusvm_notifier_invalidate() 1247 struct mmu_interval_notifier *notifier = &range->notifier->notifier; in drm_gpusvm_range_get_pages() 1482 struct mmu_interval_notifier *notifier = &range->notifier->notifier; in drm_gpusvm_range_evict()
|
/linux/lib/ |
H A D | test_hmm.c | 82 struct mmu_interval_notifier notifier; 93 struct mmu_interval_notifier notifier; 258 static bool dmirror_interval_invalidate(struct mmu_interval_notifier *mni, in dmirror_interval_invalidate() 1055 static bool dmirror_snapshot_invalidate(struct mmu_interval_notifier *mni, in dmirror_snapshot_invalidate()
|
/linux/drivers/gpu/drm/i915/gem/ |
H A D | i915_gem_userptr.c | 58 static bool i915_gem_userptr_invalidate(struct mmu_interval_notifier *mni, in i915_gem_userptr_invalidate()
|
/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_svm.c | 502 struct mmu_interval_notifier notifier; 506 static bool nouveau_svm_range_invalidate(struct mmu_interval_notifier *mni, in nouveau_svm_range_invalidate()
|
/linux/drivers/infiniband/sw/rxe/ |
H A D | rxe_odp.c | 13 static bool rxe_ib_invalidate_range(struct mmu_interval_notifier *mni, in rxe_ib_invalidate_range()
|
/linux/Documentation/mm/ |
H A D | hmm.rst | 148 registration of a mmu_interval_notifier:: 150 int mmu_interval_notifier_insert(struct mmu_interval_notifier *interval_sub,
|
/linux/drivers/infiniband/hw/mlx5/ |
H A D | odp.c | 271 static bool mlx5_ib_invalidate_range(struct mmu_interval_notifier *mni, in mlx5_ib_invalidate_range()
|