| /drivers/gpu/drm/xe/ |
| A D | xe_hmm.c | 136 struct xe_userptr *userptr = &uvma->userptr; in xe_hmm_userptr_set_mapped() local 144 userptr->mapped = true; in xe_hmm_userptr_set_mapped() 150 struct xe_userptr *userptr = &uvma->userptr; in xe_hmm_userptr_unmap() local 166 if (userptr->sg && userptr->mapped) in xe_hmm_userptr_unmap() 169 userptr->mapped = false; in xe_hmm_userptr_unmap() 183 struct xe_userptr *userptr = &uvma->userptr; in xe_hmm_userptr_free_sg() local 188 userptr->sg = NULL; in xe_hmm_userptr_free_sg() 238 userptr = &uvma->userptr; in xe_hmm_userptr_populate_range() 250 if (userptr->sg) in xe_hmm_userptr_populate_range() 293 ret = xe_alloc_sg(vm->xe, &userptr->sgt, &hmm_range, &vm->userptr.notifier_lock); in xe_hmm_userptr_populate_range() [all …]
|
| A D | xe_vm.c | 65 uvma->userptr.notifier_seq) ? in xe_vma_userptr_check_repin() 266 up_read(&vm->userptr.notifier_lock); in xe_vm_add_compute_exec_queue() 588 struct xe_userptr *userptr = &uvma->userptr; in __vma_userptr_invalidate() local 686 uvma->userptr.notifier_seq -= 2; in xe_vma_userptr_force_invalidate() 703 userptr.invalidate_link) { in xe_vm_userptr_pin() 706 &vm->userptr.repin_list); in xe_vm_userptr_pin() 712 userptr.repin_link) { in xe_vm_userptr_pin() 755 userptr.repin_link) { in xe_vm_userptr_pin() 1246 struct xe_userptr *userptr = &to_userptr_vma(vma)->userptr; in xe_vma_create() local 1284 struct xe_userptr *userptr = &uvma->userptr; in xe_vma_destroy_late() local [all …]
|
| A D | xe_pt.c | 759 xe_res_first_sg(to_userptr_vma(vma)->userptr.sg, 0, in xe_pt_stage_bind() 1350 u32 divisor = uvma->userptr.divisor ? uvma->userptr.divisor : 2; in xe_pt_userptr_inject_eagain() 1354 uvma->userptr.divisor = divisor << 1; in xe_pt_userptr_inject_eagain() 1376 lockdep_assert_held_read(&vm->userptr.notifier_lock); in vma_check_userptr() 1385 notifier_seq = uvma->userptr.notifier_seq; in vma_check_userptr() 1447 down_read(&vm->userptr.notifier_lock); in xe_pt_userptr_pre_commit() 1452 up_read(&vm->userptr.notifier_lock); in xe_pt_userptr_pre_commit() 2239 to_userptr_vma(vma)->userptr.initial_bind = true; in bind_op_commit() 2276 spin_lock(&vm->userptr.invalidated_lock); in unbind_op_commit() 2278 spin_unlock(&vm->userptr.invalidated_lock); in unbind_op_commit() [all …]
|
| A D | xe_vm_types.h | 147 struct xe_userptr userptr; member 273 } userptr; member
|
| A D | Kconfig.debug | 106 bool "Inject userptr invalidation -EINVAL errors" 110 are hit during checks for userptr invalidations.
|
| A D | xe_exec.c | 297 err = down_read_interruptible(&vm->userptr.notifier_lock); in xe_exec_ioctl() 339 up_read(&vm->userptr.notifier_lock); in xe_exec_ioctl()
|
| /drivers/gpu/drm/i915/gem/ |
| A D | i915_gem_userptr.c | 84 if (!--obj->userptr.page_ref) { in i915_gem_object_userptr_drop_ref() 85 pvec = obj->userptr.pvec; in i915_gem_object_userptr_drop_ref() 86 obj->userptr.pvec = NULL; in i915_gem_object_userptr_drop_ref() 114 if (!obj->userptr.page_ref) { in i915_gem_userptr_get_pages() 119 obj->userptr.page_ref++; in i915_gem_userptr_get_pages() 120 pvec = obj->userptr.pvec; in i915_gem_userptr_get_pages() 249 if (notifier_seq == obj->userptr.notifier_seq && obj->userptr.pvec) { in i915_gem_object_userptr_submit_init() 283 obj->userptr.notifier_seq)) { in i915_gem_object_userptr_submit_init() 289 obj->userptr.pvec = pvec; in i915_gem_object_userptr_submit_init() 295 obj->userptr.page_ref--; in i915_gem_object_userptr_submit_init() [all …]
|
| /drivers/accel/habanalabs/common/ |
| A D | memory.c | 231 userptr = kzalloc(sizeof(*userptr), GFP_KERNEL); in dma_map_host_va() 232 if (!userptr) { in dma_map_host_va() 245 *p_userptr = userptr; in dma_map_host_va() 258 kfree(userptr); in dma_map_host_va() 277 kfree(userptr); in dma_unmap_host_va() 2393 userptr->sgt = kzalloc(sizeof(*userptr->sgt), GFP_KERNEL); in hl_pin_host_memory() 2408 userptr); in hl_pin_host_memory() 2439 hl_dma_unmap_sgtable(hdev, userptr->sgt, userptr->dir); in hl_unpin_host_memory() 2441 unpin_user_pages_dirty_lock(userptr->pages, userptr->npages, true); in hl_unpin_host_memory() 2466 kfree(userptr); in hl_userptr_delete_list() [all …]
|
| A D | debugfs.c | 207 struct hl_userptr *userptr; in userptr_show() local 222 userptr->pid, userptr->addr, userptr->size, in userptr_show() 223 dma_dir[userptr->dir]); in userptr_show() 242 struct hl_userptr *userptr; in vm_show() local 267 userptr = hnode->ptr; in vm_show() 354 struct hl_userptr *userptr; in userptr_lookup_show() local 364 dev_entry->userptr_lookup < userptr->addr + userptr->size) { in userptr_lookup_show() 370 sg_end = userptr->addr + in userptr_lookup_show() 386 userptr->addr, userptr->size); in userptr_lookup_show() 689 struct hl_userptr *userptr; in device_va_to_pa() local [all …]
|
| /drivers/gpu/drm/radeon/ |
| A D | radeon_ttm.c | 316 uint64_t userptr; member 340 unsigned long end = gtt->userptr + (u64)ttm->num_pages * PAGE_SIZE; in radeon_ttm_tt_pin_userptr() 342 vma = find_vma(gtt->usermm, gtt->userptr); in radeon_ttm_tt_pin_userptr() 349 uint64_t userptr = gtt->userptr + pinned * PAGE_SIZE; in radeon_ttm_tt_pin_userptr() local 352 r = get_user_pages(userptr, num_pages, write ? FOLL_WRITE : 0, in radeon_ttm_tt_pin_userptr() 433 if (gtt->userptr) { in radeon_ttm_backend_bind() 461 if (gtt->userptr) in radeon_ttm_backend_unbind() 535 if (gtt && gtt->userptr) { in radeon_ttm_tt_populate() 561 if (gtt && gtt->userptr) { in radeon_ttm_tt_unpopulate() 582 gtt->userptr = addr; in radeon_ttm_tt_set_userptr() [all …]
|
| A D | Kconfig | 39 bool "Always enable userptr support" 44 selected to enabled full userptr support.
|
| /drivers/media/v4l2-core/ |
| A D | v4l2-compat-ioctl32.c | 272 compat_long_t userptr; member 300 compat_long_t userptr; member 324 compat_long_t userptr; member 350 m.userptr = (unsigned long)compat_ptr(plane32.m.userptr); in get_v4l2_plane32() 387 plane32.m.userptr = (uintptr_t)(p64->m.userptr); in put_v4l2_plane32() 431 vb->m.userptr = (unsigned long)compat_ptr(vb32.m.userptr); in get_v4l2_buffer32() 475 vb->m.userptr = (unsigned long)compat_ptr(vb32.m.userptr); in get_v4l2_buffer32_time32() 518 vb32.m.userptr = (uintptr_t)(vb->m.userptr); in put_v4l2_buffer32() 562 vb32.m.userptr = (uintptr_t)(vb->m.userptr); in put_v4l2_buffer32_time32()
|
| /drivers/gpu/drm/etnaviv/ |
| A D | etnaviv_gem.c | 668 struct etnaviv_gem_userptr *userptr = &etnaviv_obj->userptr; in etnaviv_gem_userptr_get_pages() local 674 if (userptr->mm != current->mm) in etnaviv_gem_userptr_get_pages() 681 if (!userptr->ro) in etnaviv_gem_userptr_get_pages() 686 uint64_t ptr = userptr->ptr + pinned * PAGE_SIZE; in etnaviv_gem_userptr_get_pages() 746 etnaviv_obj->userptr.ptr = ptr; in etnaviv_gem_new_userptr() 747 etnaviv_obj->userptr.mm = current->mm; in etnaviv_gem_new_userptr() 748 etnaviv_obj->userptr.ro = !(flags & ETNA_USERPTR_WRITE); in etnaviv_gem_new_userptr()
|
| A D | etnaviv_gem.h | 58 struct etnaviv_gem_userptr userptr; member
|
| /drivers/gpu/drm/amd/amdgpu/ |
| A D | amdgpu_ttm.c | 681 uint64_t userptr; member 772 gtt->userptr, ttm->num_pages); in amdgpu_ttm_tt_get_user_pages_done() 935 if (gtt->userptr) { in amdgpu_ttm_backend_bind() 1062 if (gtt->userptr) { in amdgpu_ttm_backend_unbind() 1151 if (gtt->userptr) { in amdgpu_ttm_tt_populate() 1191 if (gtt->userptr) { in amdgpu_ttm_tt_unpopulate() 1230 *user_addr = gtt->userptr; in amdgpu_ttm_tt_get_userptr() 1262 gtt->userptr = addr; in amdgpu_ttm_tt_set_userptr() 1307 if (gtt->userptr > end || gtt->userptr + size <= start) in amdgpu_ttm_tt_affect_userptr() 1310 if (userptr) in amdgpu_ttm_tt_affect_userptr() [all …]
|
| A D | Kconfig | 69 bool "Always enable userptr write support" 75 isn't already selected to enabled full userptr support.
|
| /drivers/accel/amdxdna/ |
| A D | amdxdna_gem.c | 45 if (heap->mem.userptr == AMDXDNA_INVALID_ADDR) { in amdxdna_gem_heap_alloc() 69 mem->userptr = heap->mem.userptr + offset; in amdxdna_gem_heap_alloc() 236 if (abo->mem.userptr == AMDXDNA_INVALID_ADDR) in amdxdna_hmm_register() 237 abo->mem.userptr = addr; in amdxdna_hmm_register() 474 abo->mem.userptr = AMDXDNA_INVALID_ADDR; in amdxdna_gem_create_obj() 737 args->handle, args->type, abo->mem.userptr, in amdxdna_drm_create_bo_ioctl() 825 args->vaddr = abo->mem.userptr; in amdxdna_drm_get_bo_info_ioctl()
|
| A D | amdxdna_gem.h | 24 u64 userptr; member
|
| /drivers/gpu/drm/exynos/ |
| A D | exynos_drm_g2d.c | 207 unsigned long userptr; member 415 unsigned long userptr, in g2d_userptr_get_dma_addr() argument 434 if (g2d_userptr->userptr == userptr) { in g2d_userptr_get_dma_addr() 468 start = userptr & PAGE_MASK; in g2d_userptr_get_dma_addr() 469 offset = userptr & ~PAGE_MASK; in g2d_userptr_get_dma_addr() 470 end = PAGE_ALIGN(userptr + size); in g2d_userptr_get_dma_addr() 517 g2d_userptr->userptr = userptr; in g2d_userptr_get_dma_addr() 747 g2d_userptr.userptr, in g2d_map_cmdlist_gem()
|
| /drivers/gpu/drm/msm/ |
| A D | msm_gem_submit.c | 138 void __user *userptr = in submit_lookup_objects() local 146 if (copy_from_user(&submit_bo, userptr, sizeof(submit_bo))) { in submit_lookup_objects() 204 void __user *userptr = in submit_lookup_cmds() local 207 ret = copy_from_user(&submit_cmd, userptr, sizeof(submit_cmd)); in submit_lookup_cmds() 249 userptr = u64_to_user_ptr(submit_cmd.relocs); in submit_lookup_cmds() 263 ret = copy_from_user(submit->cmd[i].relocs, userptr, sz); in submit_lookup_cmds()
|
| /drivers/media/common/videobuf2/ |
| A D | videobuf2-v4l2.c | 210 planes[plane].m.userptr = in vb2_fill_vb2_v4l2_buffer() 211 b->m.planes[plane].m.userptr; in vb2_fill_vb2_v4l2_buffer() 284 planes[0].m.userptr = b->m.userptr; in vb2_fill_vb2_v4l2_buffer() 515 pdst->m.userptr = psrc->m.userptr; in __fill_v4l2_buffer() 531 b->m.userptr = vb->planes[0].m.userptr; in __fill_v4l2_buffer()
|
| /drivers/gpu/drm/nouveau/ |
| A D | nouveau_drv.h | 191 void __user *userptr = u64_to_user_ptr(user); in u_memcpya() local 196 return vmemdup_user(userptr, bytes); in u_memcpya()
|
| /drivers/cdrom/ |
| A D | cdrom.c | 3275 void __user *userptr = (void __user *)arg; in mmc_ioctl() local 3285 return mmc_ioctl_cdrom_read_data(cdi, userptr, &cgc, cmd); in mmc_ioctl() 3287 return mmc_ioctl_cdrom_read_audio(cdi, userptr); in mmc_ioctl() 3289 return mmc_ioctl_cdrom_subchannel(cdi, userptr); in mmc_ioctl() 3291 return mmc_ioctl_cdrom_play_msf(cdi, userptr, &cgc); in mmc_ioctl() 3293 return mmc_ioctl_cdrom_play_blk(cdi, userptr, &cgc); in mmc_ioctl() 3296 return mmc_ioctl_cdrom_volume(cdi, userptr, &cgc, cmd); in mmc_ioctl() 3304 return mmc_ioctl_dvd_read_struct(cdi, userptr, &cgc); in mmc_ioctl() 3306 return mmc_ioctl_dvd_auth(cdi, userptr); in mmc_ioctl() 3308 return mmc_ioctl_cdrom_next_writable(cdi, userptr); in mmc_ioctl() [all …]
|
| /drivers/accel/habanalabs/goya/ |
| A D | goya.c | 3332 struct hl_userptr *userptr; in goya_pin_memory_before_cs() local 3339 userptr = kzalloc(sizeof(*userptr), GFP_KERNEL); in goya_pin_memory_before_cs() 3340 if (!userptr) in goya_pin_memory_before_cs() 3344 userptr); in goya_pin_memory_before_cs() 3356 userptr->dma_mapped = true; in goya_pin_memory_before_cs() 3357 userptr->dir = dir; in goya_pin_memory_before_cs() 3366 list_del(&userptr->job_node); in goya_pin_memory_before_cs() 3367 hl_unpin_host_memory(hdev, userptr); in goya_pin_memory_before_cs() 3369 kfree(userptr); in goya_pin_memory_before_cs() 3752 struct hl_userptr *userptr; in goya_patch_dma_packet() local [all …]
|
| /drivers/gpu/drm/i915/ |
| A D | Kconfig | 115 bool "Always enable userptr support" 121 selected to enabled full userptr support.
|