Searched refs:uvma (Results 1 – 4 of 4) sorted by relevance
| /linux/drivers/gpu/drm/xe/ |
| H A D | xe_userptr.c | 34 int xe_vma_userptr_check_repin(struct xe_userptr_vma *uvma) in xe_vma_userptr_check_repin() argument 36 return mmu_interval_check_retry(&uvma->userptr.notifier, in xe_vma_userptr_check_repin() 37 uvma->userptr.pages.notifier_seq) ? in xe_vma_userptr_check_repin() 60 int xe_vma_userptr_pin_pages(struct xe_userptr_vma *uvma) in xe_vma_userptr_pin_pages() argument 62 struct xe_vma *vma = &uvma->vma; in xe_vma_userptr_pin_pages() 77 return drm_gpusvm_get_pages(&vm->svm.gpusvm, &uvma->userptr.pages, in xe_vma_userptr_pin_pages() 78 uvma->userptr.notifier.mm, in xe_vma_userptr_pin_pages() 79 &uvma->userptr.notifier, in xe_vma_userptr_pin_pages() 86 xe_vma_userptr_do_inval(struct xe_vm *vm, struct xe_userptr_vma *uvma, bool is_deferred) in xe_vma_userptr_do_inval() argument 88 struct xe_userptr *userptr = &uvma->userptr; in xe_vma_userptr_do_inval() [all …]
|
| H A D | xe_pt.c | 1531 static bool xe_pt_userptr_inject_eagain(struct xe_userptr_vma *uvma) in xe_pt_userptr_inject_eagain() argument 1533 u32 divisor = uvma->userptr.divisor ? uvma->userptr.divisor : 2; in xe_pt_userptr_inject_eagain() 1537 uvma->userptr.divisor = divisor << 1; in xe_pt_userptr_inject_eagain() 1546 static bool xe_pt_userptr_inject_eagain(struct xe_userptr_vma *uvma) in xe_pt_userptr_inject_eagain() argument 1556 struct xe_userptr_vma *uvma; in vma_check_userptr() local 1564 uvma = to_userptr_vma(vma); in vma_check_userptr() 1565 if (xe_pt_userptr_inject_eagain(uvma)) in vma_check_userptr() 1566 xe_vma_userptr_force_invalidate(uvma); in vma_check_userptr() 1568 notifier_seq = uvma->userptr.pages.notifier_seq; in vma_check_userptr() 1570 if (!mmu_interval_read_retry(&uvma->userptr.notifier, in vma_check_userptr()
|
| H A D | xe_pagefault.c | 109 struct xe_userptr_vma *uvma = to_userptr_vma(vma); in xe_pagefault_handle_vma() local 111 err = xe_vma_userptr_pin_pages(uvma); in xe_pagefault_handle_vma()
|
| /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() 185 u8 page_shift = uvma->page_shift; in nouveau_uvma_vmm_put() 187 return nouveau_uvmm_vmm_put(to_uvmm(uvma), addr, range, page_shift); in nouveau_uvma_vmm_put() 191 nouveau_uvma_map(struct nouveau_uvma *uvma, in nouveau_uvma_map() argument 194 u64 addr = uvma->va.va.addr; in nouveau_uvma_map() 195 u64 offset = uvma->va.gem.offset; in nouveau_uvma_map() 196 u64 range = uvma->va.va.range; in nouveau_uvma_map() 197 u8 page_shift = uvma->page_shift; in nouveau_uvma_map() [all …]
|