/external/mesa3d/src/gallium/drivers/nouveau/ |
D | nouveau_fence.c | 33 nouveau_fence_new(struct nouveau_screen *screen, struct nouveau_fence **fence) in nouveau_fence_new() argument 35 *fence = CALLOC_STRUCT(nouveau_fence); in nouveau_fence_new() 36 if (!*fence) in nouveau_fence_new() 39 (*fence)->screen = screen; in nouveau_fence_new() 40 (*fence)->ref = 1; in nouveau_fence_new() 41 list_inithead(&(*fence)->work); in nouveau_fence_new() 47 nouveau_fence_trigger_work(struct nouveau_fence *fence) in nouveau_fence_trigger_work() argument 51 LIST_FOR_EACH_ENTRY_SAFE(work, tmp, &fence->work, list) { in nouveau_fence_trigger_work() 59 nouveau_fence_emit(struct nouveau_fence *fence) in nouveau_fence_emit() argument 61 struct nouveau_screen *screen = fence->screen; in nouveau_fence_emit() [all …]
|
/external/mesa3d/src/mesa/drivers/dri/i965/ |
D | brw_sync.c | 72 struct brw_fence fence; member 76 brw_fence_init(struct brw_context *brw, struct brw_fence *fence, in brw_fence_init() argument 79 fence->brw = brw; in brw_fence_init() 80 fence->type = type; in brw_fence_init() 81 mtx_init(&fence->mutex, mtx_plain); in brw_fence_init() 85 fence->batch_bo = NULL; in brw_fence_init() 88 fence->sync_fd = -1; in brw_fence_init() 94 brw_fence_finish(struct brw_fence *fence) in brw_fence_finish() argument 96 switch (fence->type) { in brw_fence_finish() 98 if (fence->batch_bo) in brw_fence_finish() [all …]
|
/external/mesa3d/src/mesa/drivers/dri/i915/ |
D | intel_syncobj.c | 56 struct intel_fence fence; member 60 intel_fence_finish(struct intel_fence *fence) in intel_fence_finish() argument 62 if (fence->batch_bo) in intel_fence_finish() 63 drm_intel_bo_unreference(fence->batch_bo); in intel_fence_finish() 67 intel_fence_insert(struct intel_context *intel, struct intel_fence *fence) in intel_fence_insert() argument 69 assert(!fence->batch_bo); in intel_fence_insert() 70 assert(!fence->signalled); in intel_fence_insert() 73 fence->batch_bo = intel->batch.bo; in intel_fence_insert() 74 drm_intel_bo_reference(fence->batch_bo); in intel_fence_insert() 79 intel_fence_has_completed_locked(struct intel_fence *fence) in intel_fence_has_completed_locked() argument [all …]
|
/external/mesa3d/src/gallium/drivers/freedreno/ |
D | freedreno_fence.c | 50 static void fence_flush(struct pipe_fence_handle *fence) in fence_flush() argument 52 if (fence->batch) in fence_flush() 53 fd_batch_flush(fence->batch); in fence_flush() 54 debug_assert(!fence->batch); in fence_flush() 57 void fd_fence_populate(struct pipe_fence_handle *fence, in fd_fence_populate() argument 60 if (!fence->batch) in fd_fence_populate() 62 fence->timestamp = timestamp; in fd_fence_populate() 63 fence->fence_fd = fence_fd; in fd_fence_populate() 64 fence->batch = NULL; in fd_fence_populate() 67 static void fd_fence_destroy(struct pipe_fence_handle *fence) in fd_fence_destroy() argument [all …]
|
/external/mesa3d/src/util/ |
D | u_queue.h | 73 util_queue_fence_init(struct util_queue_fence *fence) in util_queue_fence_init() argument 75 fence->val = 0; in util_queue_fence_init() 79 util_queue_fence_destroy(struct util_queue_fence *fence) in util_queue_fence_destroy() argument 81 assert(fence->val == 0); in util_queue_fence_destroy() 86 util_queue_fence_signal(struct util_queue_fence *fence) in util_queue_fence_signal() argument 88 uint32_t val = p_atomic_xchg(&fence->val, 0); in util_queue_fence_signal() 93 futex_wake(&fence->val, INT_MAX); in util_queue_fence_signal() 103 util_queue_fence_reset(struct util_queue_fence *fence) in util_queue_fence_reset() argument 106 fence->val = 1; in util_queue_fence_reset() 108 uint32_t v = p_atomic_xchg(&fence->val, 1); in util_queue_fence_reset() [all …]
|
D | u_queue.c | 112 do_futex_fence_wait(struct util_queue_fence *fence, in do_futex_fence_wait() argument 115 uint32_t v = fence->val; in do_futex_fence_wait() 122 v = p_atomic_cmpxchg(&fence->val, 1, 2); in do_futex_fence_wait() 127 int r = futex_wait(&fence->val, 2, timeout ? &ts : NULL); in do_futex_fence_wait() 133 v = fence->val; in do_futex_fence_wait() 140 _util_queue_fence_wait(struct util_queue_fence *fence) in _util_queue_fence_wait() argument 142 do_futex_fence_wait(fence, false, 0); in _util_queue_fence_wait() 146 _util_queue_fence_wait_timeout(struct util_queue_fence *fence, in _util_queue_fence_wait_timeout() argument 149 return do_futex_fence_wait(fence, true, abs_timeout); in _util_queue_fence_wait_timeout() 156 util_queue_fence_signal(struct util_queue_fence *fence) in util_queue_fence_signal() argument [all …]
|
/external/mesa3d/src/gallium/winsys/svga/drm/ |
D | vmw_fence.c | 106 struct vmw_fence *fence, *n; in vmw_fences_release() local 109 LIST_FOR_EACH_ENTRY_SAFE(fence, n, &ops->not_signaled, ops_list) in vmw_fences_release() 110 list_delinit(&fence->ops_list); in vmw_fences_release() 131 struct vmw_fence *fence, *n; in vmw_fences_signal() local 148 LIST_FOR_EACH_ENTRY_SAFE(fence, n, &ops->not_signaled, ops_list) { in vmw_fences_signal() 149 if (!vmw_fence_seq_is_signaled(fence->seqno, signaled, emitted)) in vmw_fences_signal() 152 p_atomic_set(&fence->signalled, 1); in vmw_fences_signal() 153 list_delinit(&fence->ops_list); in vmw_fences_signal() 170 vmw_fence(struct pipe_fence_handle *fence) in vmw_fence() argument 172 return (struct vmw_fence *) fence; in vmw_fence() [all …]
|
/external/mesa3d/src/gallium/drivers/llvmpipe/ |
D | lp_fence.c | 48 struct lp_fence *fence = CALLOC_STRUCT(lp_fence); in lp_fence_create() local 50 if (!fence) in lp_fence_create() 53 pipe_reference_init(&fence->reference, 1); in lp_fence_create() 55 (void) mtx_init(&fence->mutex, mtx_plain); in lp_fence_create() 56 cnd_init(&fence->signalled); in lp_fence_create() 58 fence->id = fence_id++; in lp_fence_create() 59 fence->rank = rank; in lp_fence_create() 62 debug_printf("%s %d\n", __FUNCTION__, fence->id); in lp_fence_create() 64 return fence; in lp_fence_create() 70 lp_fence_destroy(struct lp_fence *fence) in lp_fence_destroy() argument [all …]
|
/external/mesa3d/src/gallium/drivers/lima/ |
D | lima_fence.c | 46 struct pipe_fence_handle **fence, in lima_create_fence_fd() argument 50 *fence = lima_fence_create(os_dupfd_cloexec(fd)); in lima_create_fence_fd() 55 struct pipe_fence_handle *fence) in lima_fence_server_sync() argument 59 sync_accumulate("lima", &ctx->in_sync_fd, fence->fd); in lima_fence_server_sync() 71 struct pipe_fence_handle *fence; in lima_fence_create() local 73 fence = CALLOC_STRUCT(pipe_fence_handle); in lima_fence_create() 74 if (!fence) in lima_fence_create() 77 pipe_reference_init(&fence->reference, 1); in lima_fence_create() 78 fence->fd = fd; in lima_fence_create() 80 return fence; in lima_fence_create() [all …]
|
/external/virglrenderer/src/drm/ |
D | drm_fence.c | 30 drm_fence_destroy(struct drm_fence *fence) in drm_fence_destroy() argument 32 close(fence->fd); in drm_fence_destroy() 33 list_del(&fence->node); in drm_fence_destroy() 34 free(fence); in drm_fence_destroy() 40 struct drm_fence *fence = calloc(1, sizeof(*fence)); in drm_fence_create() local 42 if (!fence) in drm_fence_create() 45 fence->fd = os_dupfd_cloexec(fd); in drm_fence_create() 47 if (fence->fd < 0) { in drm_fence_create() 48 free(fence); in drm_fence_create() 52 fence->flags = flags; in drm_fence_create() [all …]
|
/external/mesa3d/src/gallium/drivers/swr/ |
D | swr_fence.cpp | 47 struct swr_fence *fence = (struct swr_fence *)userData; in swr_fence_cb() local 50 swr_fence_do_work(fence); in swr_fence_cb() 54 if (fence->read < userData2) in swr_fence_cb() 55 fence->read = userData2; in swr_fence_cb() 64 struct swr_fence *fence = swr_fence(fh); in swr_fence_submit() local 66 fence->write++; in swr_fence_submit() 67 fence->pending = TRUE; in swr_fence_submit() 68 ctx->api.pfnSwrSync(ctx->swrContext, swr_fence_cb, (uint64_t)fence, fence->write, 0); in swr_fence_submit() 78 struct swr_fence *fence = CALLOC_STRUCT(swr_fence); in swr_fence_create() local 79 if (!fence) in swr_fence_create() [all …]
|
D | swr_fence_work.cpp | 34 swr_fence_do_work(struct swr_fence *fence) in swr_fence_do_work() argument 38 if (fence->work.head.next) { in swr_fence_do_work() 39 work = fence->work.head.next; in swr_fence_do_work() 42 p_atomic_set(&fence->work.head.next, 0); in swr_fence_do_work() 43 p_atomic_set(&fence->work.tail, &fence->work.head); in swr_fence_do_work() 44 p_atomic_set(&fence->work.count, 0); in swr_fence_do_work() 70 struct swr_fence *fence = swr_fence(fh); in swr_add_fence_work() local 71 p_atomic_set(&fence->work.tail->next, work); in swr_add_fence_work() 72 p_atomic_set(&fence->work.tail, work); in swr_add_fence_work() 73 p_atomic_inc(&fence->work.count); in swr_add_fence_work() [all …]
|
/external/mesa3d/src/gallium/drivers/etnaviv/ |
D | etnaviv_fence.c | 46 etna_fence_destroy(struct pipe_fence_handle *fence) in etna_fence_destroy() argument 48 if (fence->fence_fd != -1) in etna_fence_destroy() 49 close(fence->fence_fd); in etna_fence_destroy() 50 FREE(fence); in etna_fence_destroy() 56 struct pipe_fence_handle *fence) in etna_screen_fence_reference() argument 58 if (pipe_reference(&(*ptr)->reference, &fence->reference)) in etna_screen_fence_reference() 61 *ptr = fence; in etna_screen_fence_reference() 66 struct pipe_fence_handle *fence, uint64_t timeout) in etna_screen_fence_finish() argument 68 if (fence->fence_fd != -1) in etna_screen_fence_finish() 69 return !sync_wait(fence->fence_fd, timeout / 1000000); in etna_screen_fence_finish() [all …]
|
/external/mesa3d/src/gallium/drivers/zink/ |
D | zink_fence.c | 35 destroy_fence(struct zink_screen *screen, struct zink_fence *fence) in destroy_fence() argument 37 if (fence->fence) in destroy_fence() 38 vkDestroyFence(screen->dev, fence->fence, NULL); in destroy_fence() 39 util_dynarray_fini(&fence->resources); in destroy_fence() 40 FREE(fence); in destroy_fence() 57 if (vkCreateFence(screen->dev, &fci, NULL, &ret->fence) != VK_SUCCESS) { in zink_create_fence() 86 struct zink_fence *fence) in zink_fence_reference() argument 88 if (pipe_reference(&(*ptr)->reference, &fence->reference)) in zink_fence_reference() 91 *ptr = fence; in zink_fence_reference() 104 fence_remove_resource_access(struct zink_fence *fence, struct zink_resource *res) in fence_remove_resource_access() argument [all …]
|
/external/mesa3d/src/gallium/drivers/iris/ |
D | iris_fence.c | 98 struct drm_i915_gem_exec_fence *fence = in iris_batch_add_syncobj() local 101 *fence = (struct drm_i915_gem_exec_fence) { in iris_batch_add_syncobj() 135 struct drm_i915_gem_exec_fence *fence = in clear_stale_syncobjs() local 138 assert(fence->flags & I915_EXEC_FENCE_WAIT); in clear_stale_syncobjs() 157 memcpy(fence, nth_fence, sizeof(*fence)); in clear_stale_syncobjs() 174 struct pipe_fence_handle *fence) in iris_fence_destroy() argument 178 for (unsigned i = 0; i < ARRAY_SIZE(fence->fine); i++) in iris_fence_destroy() 179 iris_fine_fence_reference(screen, &fence->fine[i], NULL); in iris_fence_destroy() 181 free(fence); in iris_fence_destroy() 254 struct pipe_fence_handle *fence = calloc(1, sizeof(*fence)); in iris_fence_flush() local [all …]
|
/external/igt-gpu-tools/tests/ |
D | sw_sync.c | 79 int fence; in test_timeline_closed() local 83 fence = sw_sync_timeline_create_fence(timeline, 1); in test_timeline_closed() 86 igt_assert_f(sync_fence_wait(fence, 0) == 0, in test_timeline_closed() 88 igt_assert_f(sync_fence_status(fence) == -ENOENT, in test_timeline_closed() 94 int fence; in test_timeline_closed_signaled() local 98 fence = sw_sync_timeline_create_fence(timeline, 1); in test_timeline_closed_signaled() 102 igt_assert_f(sync_fence_wait(fence, 0) == 0, in test_timeline_closed_signaled() 128 int fence; in test_sync_busy() local 133 fence = sw_sync_timeline_create_fence(timeline, 5); in test_sync_busy() 136 igt_assert_f(sync_fence_wait(fence, 0) == -ETIME, in test_sync_busy() [all …]
|
/external/linux-kselftest/tools/testing/selftests/sync/ |
D | sync_stress_consumer.c | 40 static int busy_wait_on_fence(int fence) in busy_wait_on_fence() argument 45 error = sync_fence_count_with_status(fence, FENCE_STATUS_ERROR); in busy_wait_on_fence() 47 active = sync_fence_count_with_status(fence, in busy_wait_on_fence() 66 int fence, valid, i; in mpsc_producer_thread() local 72 fence = sw_sync_fence_create(consumer_timeline, "fence", i); in mpsc_producer_thread() 73 valid = sw_sync_fence_is_valid(fence); in mpsc_producer_thread() 82 ASSERT(sync_wait(fence, -1) > 0, in mpsc_producer_thread() 85 ASSERT(busy_wait_on_fence(fence) == 0, in mpsc_producer_thread() 100 sw_sync_fence_destroy(fence); in mpsc_producer_thread() 108 int fence, merged, tmp, valid, it, i; in mpcs_consumer_thread() local [all …]
|
/external/perfetto/src/trace_processor/metrics/sql/android/jank/ |
D | relevant_slices.sql | 105 GPU_COMPLETION_FENCE_ID_FROM_NAME(fence.name) AS fence_idx 107 JOIN descendant_slice(draw_frame.id) fence 108 ON fence.name GLOB '*GPU completion fence*'; 117 GPU_COMPLETION_FENCE_ID_FROM_NAME(fence.name) AS fence_idx 119 JOIN descendant_slice(draw_frame.id) fence 120 ON fence.name GLOB '*HWC release fence *'; 126 fence.cuj_id, 130 fence.fence_idx, 134 JOIN android_jank_cuj_hwc_release_fence fence 135 ON fence.cuj_id = hwc_release_thread.cuj_id [all …]
|
/external/mesa3d/src/gallium/frontends/dri/ |
D | dri_helpers.c | 95 struct dri2_fence *fence = CALLOC_STRUCT(dri2_fence); in dri2_create_fence() local 97 if (!fence) in dri2_create_fence() 100 stapi->flush(stapi, 0, &fence->pipe_fence, NULL, NULL); in dri2_create_fence() 102 if (!fence->pipe_fence) { in dri2_create_fence() 103 FREE(fence); in dri2_create_fence() 107 fence->driscreen = dri_screen(_ctx->driScreenPriv); in dri2_create_fence() 108 return fence; in dri2_create_fence() 116 struct dri2_fence *fence = CALLOC_STRUCT(dri2_fence); in dri2_create_fence_fd() local 120 stapi->flush(stapi, ST_FLUSH_FENCE_FD, &fence->pipe_fence, NULL, NULL); in dri2_create_fence_fd() 123 ctx->create_fence_fd(ctx, &fence->pipe_fence, fd, PIPE_FD_TYPE_NATIVE_SYNC); in dri2_create_fence_fd() [all …]
|
/external/mesa3d/src/mesa/state_tracker/ |
D | st_cb_syncobj.c | 44 struct pipe_fence_handle *fence; member 63 screen->fence_reference(screen, &so->fence, NULL); in st_delete_sync_object() 76 assert(so->fence == NULL); in st_fence_sync() 79 pipe->flush(pipe, &so->fence, ctx->Shared->RefCount == 1 ? PIPE_FLUSH_DEFERRED : 0); in st_fence_sync() 89 struct pipe_fence_handle *fence = NULL; in st_client_wait_sync() local 93 if (!so->fence) { in st_client_wait_sync() 102 screen->fence_reference(screen, &fence, so->fence); in st_client_wait_sync() 117 if (screen->fence_finish(screen, pipe, fence, timeout)) { in st_client_wait_sync() 119 screen->fence_reference(screen, &so->fence, NULL); in st_client_wait_sync() 123 screen->fence_reference(screen, &fence, NULL); in st_client_wait_sync() [all …]
|
/external/rust/crates/vulkano/src/sync/ |
D | fence.rs | 38 fence: ash::vk::Fence, field 75 fence: raw_fence, in from_pool() 101 let fence = unsafe { in alloc_impl() localVariable 123 fence: fence, in alloc_impl() 141 .get_fence_status(self.device.internal_object(), self.fence), in ready() 178 &self.fence, in wait() 208 .filter_map(|fence| { in multi_wait() 210 dev @ &mut None => *dev = Some(&*fence.device), in multi_wait() 212 if &**dev as *const Device == &*fence.device as *const Device => {} in multi_wait() 219 if fence.signaled.load(Ordering::Relaxed) { in multi_wait() [all …]
|
/external/igt-gpu-tools/tests/i915/ |
D | gem_exec_fence.c | 52 int32_t fence; member 60 static void store(int fd, unsigned ring, int fence, uint32_t target, unsigned offset_value) in store() argument 75 execbuf.rsvd2 = fence; in store() 113 static bool fence_busy(int fence) in fence_busy() argument 115 return poll(&(struct pollfd){fence, POLLIN}, 1, 0) == 0; in fence_busy() 130 int fence, i, timeout; in test_fence_busy() local 178 fence = execbuf.rsvd2 >> 32; in test_fence_busy() 179 igt_assert(fence != -1); in test_fence_busy() 182 igt_assert(fence_busy(fence)); in test_fence_busy() 193 struct pollfd pfd = { .fd = fence, .events = POLLIN }; in test_fence_busy() [all …]
|
/external/mesa3d/src/gallium/auxiliary/util/ |
D | u_helpers.c | 216 struct pipe_fence_handle *fence = NULL; in util_wait_for_idle() local 218 ctx->flush(ctx, &fence, 0); in util_wait_for_idle() 219 ctx->screen->fence_finish(ctx->screen, NULL, fence, PIPE_TIMEOUT_INFINITE); in util_wait_for_idle() 232 screen->fence_reference(screen, &t->ring[i].fence, NULL); in util_throttle_deinit() 250 i, t->ring[i].fence ? "yes" : " no", in util_dump_throttle_ring() 279 struct pipe_fence_handle **fence = NULL; in util_throttle_memory_usage() local 288 assert(t->ring[t->wait_index].fence); in util_throttle_memory_usage() 291 if (fence) in util_throttle_memory_usage() 292 screen->fence_reference(screen, fence, NULL); in util_throttle_memory_usage() 294 fence = &t->ring[t->wait_index].fence; in util_throttle_memory_usage() [all …]
|
/external/mesa3d/src/gallium/winsys/amdgpu/drm/ |
D | amdgpu_cs.c | 44 struct amdgpu_fence *fence = CALLOC_STRUCT(amdgpu_fence); in amdgpu_fence_create() local 46 fence->reference.count = 1; in amdgpu_fence_create() 47 fence->ws = ctx->ws; in amdgpu_fence_create() 48 fence->ctx = ctx; in amdgpu_fence_create() 49 fence->fence.context = ctx->ctx; in amdgpu_fence_create() 50 fence->fence.ip_type = ip_type; in amdgpu_fence_create() 51 fence->fence.ip_instance = ip_instance; in amdgpu_fence_create() 52 fence->fence.ring = ring; in amdgpu_fence_create() 53 util_queue_fence_init(&fence->submitted); in amdgpu_fence_create() 54 util_queue_fence_reset(&fence->submitted); in amdgpu_fence_create() [all …]
|
/external/deqp/android/cts/main/vksc-master/ |
D | synchronization.txt | 2885 dEQP-VKSC.synchronization.basic.fence.one 2886 dEQP-VKSC.synchronization.basic.fence.multi 2887 dEQP-VKSC.synchronization.basic.fence.empty_submit 2888 dEQP-VKSC.synchronization.basic.fence.multi_waitall_false 2889 dEQP-VKSC.synchronization.basic.fence.one_signaled 2890 dEQP-VKSC.synchronization.basic.fence.multiple_signaled 2900 dEQP-VKSC.synchronization.op.single_queue.fence.write_fill_buffer_read_copy_buffer.buffer_16384 2901 dEQP-VKSC.synchronization.op.single_queue.fence.write_fill_buffer_read_copy_buffer.buffer_262144 2902 dEQP-VKSC.synchronization.op.single_queue.fence.write_fill_buffer_read_copy_buffer_to_image.buffer_… 2903 dEQP-VKSC.synchronization.op.single_queue.fence.write_fill_buffer_read_copy_buffer_to_image.buffer_… [all …]
|