Searched refs:uvma (Results 1 – 7 of 7) sorted by relevance
/linux/drivers/gpu/drm/xe/ |
H A D | xe_hmm.c | 153 static void xe_hmm_userptr_set_mapped(struct xe_userptr_vma *uvma) in xe_hmm_userptr_set_mapped() argument 155 struct xe_userptr *userptr = &uvma->userptr; in xe_hmm_userptr_set_mapped() 156 struct xe_vm *vm = xe_vma_vm(&uvma->vma); in xe_hmm_userptr_set_mapped() 167 void xe_hmm_userptr_unmap(struct xe_userptr_vma *uvma) in xe_hmm_userptr_unmap() argument 169 struct xe_userptr *userptr = &uvma->userptr; in xe_hmm_userptr_unmap() 170 struct xe_vma *vma = &uvma->vma; in xe_hmm_userptr_unmap() 200 void xe_hmm_userptr_free_sg(struct xe_userptr_vma *uvma) in xe_hmm_userptr_free_sg() argument 202 struct xe_userptr *userptr = &uvma->userptr; in xe_hmm_userptr_free_sg() 204 xe_assert(xe_vma_vm(&uvma->vma)->xe, userptr->sg); in xe_hmm_userptr_free_sg() 205 xe_hmm_userptr_unmap(uvma); in xe_hmm_userptr_free_sg() [all …]
|
H A D | xe_hmm.h | 13 int xe_hmm_userptr_populate_range(struct xe_userptr_vma *uvma, bool is_mm_mmap_locked); 15 void xe_hmm_userptr_free_sg(struct xe_userptr_vma *uvma); 17 void xe_hmm_userptr_unmap(struct xe_userptr_vma *uvma);
|
H A D | xe_vm.c | 59 int xe_vma_userptr_check_repin(struct xe_userptr_vma *uvma) in xe_vma_userptr_check_repin() argument 61 return mmu_interval_check_retry(&uvma->userptr.notifier, in xe_vma_userptr_check_repin() 62 uvma->userptr.notifier_seq) ? in xe_vma_userptr_check_repin() 66 int xe_vma_userptr_pin_pages(struct xe_userptr_vma *uvma) in xe_vma_userptr_pin_pages() argument 68 struct xe_vma *vma = &uvma->vma; in xe_vma_userptr_pin_pages() 75 return xe_hmm_userptr_populate_range(uvma, false); in xe_vma_userptr_pin_pages() 582 static void __vma_userptr_invalidate(struct xe_vm *vm, struct xe_userptr_vma *uvma) in __vma_userptr_invalidate() argument 584 struct xe_userptr *userptr = &uvma->userptr; in __vma_userptr_invalidate() 585 struct xe_vma *vma = &uvma->vma; in __vma_userptr_invalidate() 624 xe_hmm_userptr_unmap(uvma); in __vma_userptr_invalidate() [all …]
|
H A D | xe_vm.h | 239 int xe_vma_userptr_pin_pages(struct xe_userptr_vma *uvma); 241 int xe_vma_userptr_check_repin(struct xe_userptr_vma *uvma); 284 void xe_vma_userptr_force_invalidate(struct xe_userptr_vma *uvma); 286 static inline void xe_vma_userptr_force_invalidate(struct xe_userptr_vma *uvma) in xe_vma_userptr_force_invalidate() argument
|
H A D | xe_pt.c | 1203 static bool xe_pt_userptr_inject_eagain(struct xe_userptr_vma *uvma) in xe_pt_userptr_inject_eagain() argument 1205 u32 divisor = uvma->userptr.divisor ? uvma->userptr.divisor : 2; in xe_pt_userptr_inject_eagain() 1209 uvma->userptr.divisor = divisor << 1; in xe_pt_userptr_inject_eagain() 1218 static bool xe_pt_userptr_inject_eagain(struct xe_userptr_vma *uvma) in xe_pt_userptr_inject_eagain() argument 1228 struct xe_userptr_vma *uvma; in vma_check_userptr() local 1236 uvma = to_userptr_vma(vma); in vma_check_userptr() 1237 if (xe_pt_userptr_inject_eagain(uvma)) in vma_check_userptr() 1238 xe_vma_userptr_force_invalidate(uvma); in vma_check_userptr() 1240 notifier_seq = uvma->userptr.notifier_seq; in vma_check_userptr() 1242 if (!mmu_interval_read_retry(&uvma->userptr.notifier, in vma_check_userptr()
|
H A D | xe_gt_pagefault.c | 147 struct xe_userptr_vma *uvma = to_userptr_vma(vma); in handle_vma_pagefault() local 149 err = xe_vma_userptr_pin_pages(uvma); in handle_vma_pagefault()
|
/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_uvmm.c | 181 nouveau_uvma_vmm_put(struct nouveau_uvma *uvma) in nouveau_uvma_vmm_put() argument 183 u64 addr = uvma->va.va.addr; in nouveau_uvma_vmm_put() 184 u64 range = uvma->va.va.range; in nouveau_uvma_vmm_put() 186 return nouveau_uvmm_vmm_put(to_uvmm(uvma), addr, range); in nouveau_uvma_vmm_put() 190 nouveau_uvma_map(struct nouveau_uvma *uvma, in nouveau_uvma_map() argument 193 u64 addr = uvma->va.va.addr; in nouveau_uvma_map() 194 u64 offset = uvma->va.gem.offset; in nouveau_uvma_map() 195 u64 range = uvma->va.va.range; in nouveau_uvma_map() 197 return nouveau_uvmm_vmm_map(to_uvmm(uvma), addr, range, in nouveau_uvma_map() 198 offset, uvma->kind, mem); in nouveau_uvma_map() [all …]
|