/openbmc/linux/drivers/gpu/drm/i915/gem/ |
H A D | i915_gem_userptr.c | 115 if (!--obj->userptr.page_ref) { in i915_gem_object_userptr_drop_ref() 116 pvec = obj->userptr.pvec; in i915_gem_object_userptr_drop_ref() 117 obj->userptr.pvec = NULL; in i915_gem_object_userptr_drop_ref() 145 if (!obj->userptr.page_ref) { in i915_gem_userptr_get_pages() 150 obj->userptr.page_ref++; in i915_gem_userptr_get_pages() 151 pvec = obj->userptr.pvec; in i915_gem_userptr_get_pages() 280 if (notifier_seq == obj->userptr.notifier_seq && obj->userptr.pvec) { in i915_gem_object_userptr_submit_init() 314 obj->userptr.notifier_seq)) { in i915_gem_object_userptr_submit_init() 320 obj->userptr.pvec = pvec; in i915_gem_object_userptr_submit_init() 326 obj->userptr.page_ref--; in i915_gem_object_userptr_submit_init() [all …]
|
H A D | i915_gem_object_types.h | 709 } userptr; member
|
/openbmc/linux/drivers/accel/habanalabs/common/ |
H 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() 2384 userptr->sgt = kzalloc(sizeof(*userptr->sgt), GFP_KERNEL); in hl_pin_host_memory() 2385 if (!userptr->sgt) in hl_pin_host_memory() 2399 userptr); in hl_pin_host_memory() 2432 unpin_user_pages_dirty_lock(userptr->pages, userptr->npages, true); in hl_unpin_host_memory() 2457 kfree(userptr); in hl_userptr_delete_list() [all …]
|
H A D | debugfs.c | 214 struct hl_userptr *userptr; in userptr_show() local 229 userptr->pid, userptr->addr, userptr->size, in userptr_show() 230 dma_dir[userptr->dir]); in userptr_show() 249 struct hl_userptr *userptr; in vm_show() local 274 userptr = hnode->ptr; in vm_show() 361 struct hl_userptr *userptr; in userptr_lookup_show() local 371 dev_entry->userptr_lookup < userptr->addr + userptr->size) { in userptr_lookup_show() 377 sg_end = userptr->addr + in userptr_lookup_show() 393 userptr->addr, userptr->size); in userptr_lookup_show() 696 struct hl_userptr *userptr; in device_va_to_pa() local [all …]
|
/openbmc/linux/drivers/gpu/drm/radeon/ |
H A D | radeon_ttm.c | 324 uint64_t userptr; member 348 unsigned long end = gtt->userptr + (u64)ttm->num_pages * PAGE_SIZE; in radeon_ttm_tt_pin_userptr() 350 vma = find_vma(gtt->usermm, gtt->userptr); in radeon_ttm_tt_pin_userptr() 357 uint64_t userptr = gtt->userptr + pinned * PAGE_SIZE; in radeon_ttm_tt_pin_userptr() local 360 r = get_user_pages(userptr, num_pages, write ? FOLL_WRITE : 0, in radeon_ttm_tt_pin_userptr() 441 if (gtt->userptr) { in radeon_ttm_backend_bind() 469 if (gtt->userptr) in radeon_ttm_backend_unbind() 543 if (gtt && gtt->userptr) { in radeon_ttm_tt_populate() 569 if (gtt && gtt->userptr) { in radeon_ttm_tt_unpopulate() 590 gtt->userptr = addr; in radeon_ttm_tt_set_userptr() [all …]
|
H A D | Kconfig | 37 bool "Always enable userptr support" 42 selected to enabled full userptr support.
|
/openbmc/linux/drivers/media/v4l2-core/ |
H A D | v4l2-compat-ioctl32.c | 264 compat_long_t userptr; member 292 compat_long_t userptr; member 316 compat_long_t userptr; member 342 m.userptr = (unsigned long)compat_ptr(plane32.m.userptr); in get_v4l2_plane32() 379 plane32.m.userptr = (uintptr_t)(p64->m.userptr); in put_v4l2_plane32() 423 vb->m.userptr = (unsigned long)compat_ptr(vb32.m.userptr); in get_v4l2_buffer32() 467 vb->m.userptr = (unsigned long)compat_ptr(vb32.m.userptr); in get_v4l2_buffer32_time32() 510 vb32.m.userptr = (uintptr_t)(vb->m.userptr); in put_v4l2_buffer32() 554 vb32.m.userptr = (uintptr_t)(vb->m.userptr); in put_v4l2_buffer32_time32()
|
/openbmc/linux/drivers/gpu/drm/etnaviv/ |
H A D | etnaviv_gem.c | 646 struct etnaviv_gem_userptr *userptr = &etnaviv_obj->userptr; in etnaviv_gem_userptr_get_pages() local 652 if (userptr->mm != current->mm) in etnaviv_gem_userptr_get_pages() 659 if (!userptr->ro) in etnaviv_gem_userptr_get_pages() 664 uint64_t ptr = userptr->ptr + pinned * PAGE_SIZE; in etnaviv_gem_userptr_get_pages() 724 etnaviv_obj->userptr.ptr = ptr; in etnaviv_gem_new_userptr() 725 etnaviv_obj->userptr.mm = current->mm; in etnaviv_gem_new_userptr() 726 etnaviv_obj->userptr.ro = !(flags & ETNA_USERPTR_WRITE); in etnaviv_gem_new_userptr()
|
H A D | etnaviv_gem.h | 55 struct etnaviv_gem_userptr userptr; member
|
/openbmc/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu_ttm.c | 658 uint64_t userptr; member 749 gtt->userptr, ttm->num_pages); in amdgpu_ttm_tt_get_user_pages_done() 911 if (gtt->userptr) { in amdgpu_ttm_backend_bind() 1042 if (gtt->userptr) { in amdgpu_ttm_backend_unbind() 1131 if (gtt->userptr) { in amdgpu_ttm_tt_populate() 1171 if (gtt->userptr) { in amdgpu_ttm_tt_unpopulate() 1210 *user_addr = gtt->userptr; in amdgpu_ttm_tt_get_userptr() 1242 gtt->userptr = addr; in amdgpu_ttm_tt_set_userptr() 1287 if (gtt->userptr > end || gtt->userptr + size <= start) in amdgpu_ttm_tt_affect_userptr() 1290 if (userptr) in amdgpu_ttm_tt_affect_userptr() [all …]
|
H A D | Kconfig | 64 bool "Always enable userptr write support" 71 isn't already selected to enabled full userptr support.
|
/openbmc/linux/drivers/gpu/drm/exynos/ |
H 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()
|
/openbmc/linux/drivers/media/common/videobuf2/ |
H 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() 528 pdst->m.userptr = psrc->m.userptr; in __fill_v4l2_buffer() 544 b->m.userptr = vb->planes[0].m.userptr; in __fill_v4l2_buffer()
|
/openbmc/linux/drivers/gpu/drm/msm/ |
H A D | msm_gem_submit.c | 120 void __user *userptr = in submit_lookup_objects() local 128 if (copy_from_user(&submit_bo, userptr, sizeof(submit_bo))) { in submit_lookup_objects() 189 void __user *userptr = in submit_lookup_cmds() local 192 ret = copy_from_user(&submit_cmd, userptr, sizeof(submit_cmd)); in submit_lookup_cmds() 222 userptr = u64_to_user_ptr(submit_cmd.relocs); in submit_lookup_cmds() 236 ret = copy_from_user(submit->cmd[i].relocs, userptr, sz); in submit_lookup_cmds()
|
/openbmc/linux/Documentation/gpu/rfc/ |
H A D | xe.rst | 146 Different drivers implement different ways of dealing with execution of userptr. 150 userptr will be a GPUVA with a NULL GEM call VM bind directly on the userptr. 161 * The userptr part of the VM_BIND api. 167 Some parts of userptr like mmu_notifiers should become GPUVA or DRM helpers when 168 the second driver supporting VM_BIND+userptr appears. Details to be defined when
|
/openbmc/linux/drivers/gpu/drm/nouveau/ |
H A D | nouveau_drv.h | 192 void __user *userptr = u64_to_user_ptr(user); in u_memcpya() local 197 return vmemdup_user(userptr, bytes); in u_memcpya()
|
/openbmc/linux/include/linux/ |
H A D | splice.h | 37 void __user *userptr; /* memory to write to */ member
|
/openbmc/linux/Documentation/userspace-api/media/v4l/ |
H A D | vidioc-prepare-buf.rst | 55 bounds, or no buffers have been allocated yet, or the ``userptr`` or
|
H A D | vidioc-qbuf.rst | 71 ``memory`` field to ``V4L2_MEMORY_USERPTR``, the ``m.userptr`` field to 73 multi-planar API is used, ``m.userptr`` and ``length`` members of the 164 bounds, or no buffers have been allocated yet, or the ``userptr`` or
|
H A D | capture.c.rst | 160 if (buf.m.userptr == (unsigned long)buffers[i].start 166 process_image((void *)buf.m.userptr, buf.bytesused); 268 buf.m.userptr = (unsigned long)buffers[i].start;
|
/openbmc/linux/drivers/gpu/drm/i915/ |
H A D | Kconfig | 114 bool "Always enable userptr support" 120 selected to enabled full userptr support.
|
/openbmc/linux/net/ipv4/netfilter/ |
H A D | ip_tables.c | 812 void __user *userptr) in copy_entries_to_user() argument 835 if (copy_to_user(userptr + off, e, sizeof(*e))) { in copy_entries_to_user() 839 if (copy_to_user(userptr + off in copy_entries_to_user() 852 if (xt_match_to_user(m, userptr + off + i)) { in copy_entries_to_user() 859 if (xt_target_to_user(t, userptr + off + e->target_offset)) { in copy_entries_to_user() 1551 void __user *userptr) in compat_copy_entries_to_user() argument 1565 pos = userptr; in compat_copy_entries_to_user()
|
/openbmc/linux/net/ipv6/netfilter/ |
H A D | ip6_tables.c | 828 void __user *userptr) in copy_entries_to_user() argument 851 if (copy_to_user(userptr + off, e, sizeof(*e))) { in copy_entries_to_user() 855 if (copy_to_user(userptr + off in copy_entries_to_user() 868 if (xt_match_to_user(m, userptr + off + i)) { in copy_entries_to_user() 875 if (xt_target_to_user(t, userptr + off + e->target_offset)) { in copy_entries_to_user() 1560 void __user *userptr) in compat_copy_entries_to_user() argument 1574 pos = userptr; in compat_copy_entries_to_user()
|
/openbmc/linux/drivers/cdrom/ |
H A D | cdrom.c | 3279 void __user *userptr = (void __user *)arg; in mmc_ioctl() local 3289 return mmc_ioctl_cdrom_read_data(cdi, userptr, &cgc, cmd); in mmc_ioctl() 3291 return mmc_ioctl_cdrom_read_audio(cdi, userptr); in mmc_ioctl() 3293 return mmc_ioctl_cdrom_subchannel(cdi, userptr); in mmc_ioctl() 3295 return mmc_ioctl_cdrom_play_msf(cdi, userptr, &cgc); in mmc_ioctl() 3297 return mmc_ioctl_cdrom_play_blk(cdi, userptr, &cgc); in mmc_ioctl() 3300 return mmc_ioctl_cdrom_volume(cdi, userptr, &cgc, cmd); in mmc_ioctl() 3308 return mmc_ioctl_dvd_read_struct(cdi, userptr, &cgc); in mmc_ioctl() 3310 return mmc_ioctl_dvd_auth(cdi, userptr); in mmc_ioctl() 3312 return mmc_ioctl_cdrom_next_writable(cdi, userptr); in mmc_ioctl() [all …]
|
/openbmc/linux/drivers/accel/habanalabs/goya/ |
H A D | goya.c | 3343 struct hl_userptr *userptr; in goya_pin_memory_before_cs() local 3350 userptr = kzalloc(sizeof(*userptr), GFP_KERNEL); in goya_pin_memory_before_cs() 3351 if (!userptr) in goya_pin_memory_before_cs() 3355 userptr); in goya_pin_memory_before_cs() 3367 userptr->dma_mapped = true; in goya_pin_memory_before_cs() 3368 userptr->dir = dir; in goya_pin_memory_before_cs() 3377 list_del(&userptr->job_node); in goya_pin_memory_before_cs() 3378 hl_unpin_host_memory(hdev, userptr); in goya_pin_memory_before_cs() 3380 kfree(userptr); in goya_pin_memory_before_cs() 3763 struct hl_userptr *userptr; in goya_patch_dma_packet() local [all …]
|