Searched refs:syncobjs (Results 1 – 5 of 5) sorted by relevance
/linux-6.14.4/drivers/gpu/drm/ |
D | drm_syncobj.c | 1030 static signed long drm_syncobj_array_wait_timeout(struct drm_syncobj **syncobjs, in drm_syncobj_array_wait_timeout() argument 1078 fence = drm_syncobj_fence_get(syncobjs[i]); in drm_syncobj_array_wait_timeout() 1118 drm_syncobj_fence_add_wait(syncobjs[i], &entries[i]); in drm_syncobj_array_wait_timeout() 1177 drm_syncobj_remove_wait(syncobjs[i], &entries[i]); in drm_syncobj_array_wait_timeout() 1228 struct drm_syncobj **syncobjs, bool timeline, in drm_syncobj_array_wait() argument 1236 timeout = drm_syncobj_array_wait_timeout(syncobjs, in drm_syncobj_array_wait() 1247 timeout = drm_syncobj_array_wait_timeout(syncobjs, in drm_syncobj_array_wait() 1266 struct drm_syncobj **syncobjs; in drm_syncobj_array_find() local 1279 syncobjs = kmalloc_array(count_handles, sizeof(*syncobjs), GFP_KERNEL); in drm_syncobj_array_find() 1280 if (syncobjs == NULL) { in drm_syncobj_array_find() [all …]
|
/linux-6.14.4/drivers/gpu/drm/virtio/ |
D | virtgpu_submit.c | 75 static void virtio_gpu_free_syncobjs(struct drm_syncobj **syncobjs, in virtio_gpu_free_syncobjs() argument 81 if (syncobjs[i]) in virtio_gpu_free_syncobjs() 82 drm_syncobj_put(syncobjs[i]); in virtio_gpu_free_syncobjs() 85 kvfree(syncobjs); in virtio_gpu_free_syncobjs() 95 struct drm_syncobj **syncobjs; in virtio_gpu_parse_deps() local 107 syncobjs = kvcalloc(num_in_syncobjs, sizeof(*syncobjs), GFP_KERNEL); in virtio_gpu_parse_deps() 108 if (!syncobjs) in virtio_gpu_parse_deps() 141 syncobjs[i] = drm_syncobj_find(submit->file, in virtio_gpu_parse_deps() 143 if (!syncobjs[i]) { in virtio_gpu_parse_deps() 151 virtio_gpu_free_syncobjs(syncobjs, i); in virtio_gpu_parse_deps() [all …]
|
/linux-6.14.4/drivers/gpu/drm/msm/ |
D | msm_gem_submit.c | 485 struct drm_syncobj **syncobjs = NULL; in msm_parse_deps() local 490 syncobjs = kcalloc(nr_in_syncobjs, sizeof(*syncobjs), in msm_parse_deps() 492 if (!syncobjs) in msm_parse_deps() 522 syncobjs[i] = in msm_parse_deps() 524 if (!syncobjs[i]) { in msm_parse_deps() 533 if (syncobjs[j]) in msm_parse_deps() 534 drm_syncobj_put(syncobjs[j]); in msm_parse_deps() 536 kfree(syncobjs); in msm_parse_deps() 539 return syncobjs; in msm_parse_deps() 542 static void msm_reset_syncobjs(struct drm_syncobj **syncobjs, in msm_reset_syncobjs() argument [all …]
|
/linux-6.14.4/Documentation/gpu/ |
D | drm-vm-bind-async.rst | 78 Asynchronous VM_BIND accepts both in-syncobjs and out-syncobjs. While the 79 IOCTL may return immediately, the VM_BIND operations wait for the in-syncobjs 80 before modifying the GPU page-tables, and signal the out-syncobjs when 82 awaits for the out-syncobjs will see the change. Errors are reported 89 the in-syncobjs needs to signal before the first operation starts to 90 execute, and the out-syncobjs signal after the last operation 95 out-syncobjs and internally in KMD to signal bind completion, any 106 fences gated by a long-running workload and used as in-syncobjs for the 108 above). Second, any dma-fences used as in-syncobjs for VM_BIND 111 out-syncobjs, so while theoretically possible the use of them is
|
/linux-6.14.4/drivers/gpu/drm/panthor/ |
D | panthor_sched.c | 630 struct panthor_kernel_bo *syncobjs; member 922 panthor_kernel_bo_destroy(group->syncobjs); in group_release_work() 2089 syncobj = group->syncobjs->kmap + (i * sizeof(*syncobj)); in group_term_post_processing() 2911 syncobj = group->syncobjs->kmap + (queue_idx * sizeof(*syncobj)); in group_sync_upd_work() 3001 params->sync_addr = panthor_kernel_bo_gpuva(group->syncobjs) + in get_job_cs_params() 3400 group->fdinfo.kbo_sizes += group->syncobjs->obj->size; in add_group_kbo_sizes() 3487 group->syncobjs = panthor_kernel_bo_create(ptdev, group->vm, in panthor_group_create() 3494 if (IS_ERR(group->syncobjs)) { in panthor_group_create() 3495 ret = PTR_ERR(group->syncobjs); in panthor_group_create() 3499 ret = panthor_kernel_bo_vmap(group->syncobjs); in panthor_group_create() [all …]
|