| /linux-6.15/include/linux/ |
| H A D | dma-fence.h | 26 struct dma_fence; 66 struct dma_fence { struct 239 void (*release)(struct dma_fence *fence); 306 static inline struct dma_fence *dma_fence_get(struct dma_fence *fence) in dma_fence_get() 320 static inline struct dma_fence *dma_fence_get_rcu(struct dma_fence *fence) in dma_fence_get_rcu() 344 static inline struct dma_fence * 348 struct dma_fence *fence; in dma_fence_get_rcu_safe() 494 struct dma_fence *f2) in dma_fence_is_later() 512 struct dma_fence *f2) in dma_fence_is_later_or_same() 526 static inline struct dma_fence *dma_fence_later(struct dma_fence *f1, in dma_fence_later() [all …]
|
| H A D | dma-fence-chain.h | 26 struct dma_fence base; 27 struct dma_fence __rcu *prev; 29 struct dma_fence *fence; 61 to_dma_fence_chain(struct dma_fence *fence) in to_dma_fence_chain() 76 static inline struct dma_fence * 77 dma_fence_chain_contained(struct dma_fence *fence) in dma_fence_chain_contained() 124 struct dma_fence *dma_fence_chain_walk(struct dma_fence *fence); 125 int dma_fence_chain_find_seqno(struct dma_fence **pfence, uint64_t seqno); 127 struct dma_fence *prev, 128 struct dma_fence *fence,
|
| H A D | dma-fence-unwrap.h | 11 struct dma_fence; 22 struct dma_fence *chain; 26 struct dma_fence *array; 33 struct dma_fence *dma_fence_unwrap_first(struct dma_fence *head, 35 struct dma_fence *dma_fence_unwrap_next(struct dma_fence_unwrap *cursor); 51 struct dma_fence *__dma_fence_unwrap_merge(unsigned int num_fences, 52 struct dma_fence **fences, 69 struct dma_fence *__f[] = { __VA_ARGS__ }; \
|
| H A D | dma-fence-array.h | 39 struct dma_fence base; 44 struct dma_fence **fences; 59 to_dma_fence_array(struct dma_fence *fence) in to_dma_fence_array() 84 int num_fences, struct dma_fence **fences, 89 struct dma_fence **fences, 93 bool dma_fence_match_context(struct dma_fence *fence, u64 context); 95 struct dma_fence *dma_fence_array_first(struct dma_fence *head); 96 struct dma_fence *dma_fence_array_next(struct dma_fence *head,
|
| H A D | dma-resv.h | 201 struct dma_fence *fence; 219 struct dma_fence *dma_resv_iter_first_unlocked(struct dma_resv_iter *cursor); 220 struct dma_fence *dma_resv_iter_next_unlocked(struct dma_resv_iter *cursor); 221 struct dma_fence *dma_resv_iter_first(struct dma_resv_iter *cursor); 222 struct dma_fence *dma_resv_iter_next(struct dma_resv_iter *cursor); 470 void dma_resv_add_fence(struct dma_resv *obj, struct dma_fence *fence, 473 struct dma_fence *fence, 476 unsigned int *num_fences, struct dma_fence ***fences); 478 struct dma_fence **fence);
|
| /linux-6.15/include/trace/events/ |
| H A D | dma_fence.h | 3 #define TRACE_SYSTEM dma_fence 10 struct dma_fence; 12 DECLARE_EVENT_CLASS(dma_fence, 14 TP_PROTO(struct dma_fence *fence), 39 TP_PROTO(struct dma_fence *fence), 46 TP_PROTO(struct dma_fence *fence), 53 TP_PROTO(struct dma_fence *fence), 60 TP_PROTO(struct dma_fence *fence), 67 TP_PROTO(struct dma_fence *fence), 74 TP_PROTO(struct dma_fence *fence), [all …]
|
| /linux-6.15/drivers/gpu/drm/xe/ |
| H A D | xe_hw_fence.c | 62 struct dma_fence *dma_fence = &fence->dma; in hw_fence_irq_run_cb() local 68 dma_fence_put(dma_fence); in hw_fence_irq_run_cb() 147 static const char *xe_hw_fence_get_driver_name(struct dma_fence *dma_fence) in xe_hw_fence_get_driver_name() argument 154 static const char *xe_hw_fence_get_timeline_name(struct dma_fence *dma_fence) in xe_hw_fence_get_timeline_name() argument 161 static bool xe_hw_fence_signaled(struct dma_fence *dma_fence) in xe_hw_fence_signaled() argument 167 return dma_fence->error || in xe_hw_fence_signaled() 168 !__dma_fence_is_later(dma_fence->seqno, seqno, dma_fence->ops); in xe_hw_fence_signaled() 171 static bool xe_hw_fence_enable_signaling(struct dma_fence *dma_fence) in xe_hw_fence_enable_signaling() argument 176 dma_fence_get(dma_fence); in xe_hw_fence_enable_signaling() 180 if (xe_hw_fence_signaled(dma_fence)) in xe_hw_fence_enable_signaling() [all …]
|
| H A D | xe_migrate.h | 11 struct dma_fence; 98 struct dma_fence *xe_migrate_to_vram(struct xe_migrate *m, 103 struct dma_fence *xe_migrate_from_vram(struct xe_migrate *m, 108 struct dma_fence *xe_migrate_copy(struct xe_migrate *m, 119 struct dma_fence *xe_migrate_clear(struct xe_migrate *m, 126 struct dma_fence *
|
| /linux-6.15/drivers/dma-buf/ |
| H A D | dma-fence-chain.c | 23 struct dma_fence *prev; in dma_fence_chain_get_prev() 39 struct dma_fence *dma_fence_chain_walk(struct dma_fence *fence) in dma_fence_chain_walk() 42 struct dma_fence *prev, *replacement, *tmp; in dma_fence_chain_walk() 151 struct dma_fence *f = dma_fence_chain_contained(fence); in dma_fence_chain_enable_signaling() 164 static bool dma_fence_chain_signaled(struct dma_fence *fence) in dma_fence_chain_signaled() 167 struct dma_fence *f = dma_fence_chain_contained(fence); in dma_fence_chain_signaled() 178 static void dma_fence_chain_release(struct dma_fence *fence) in dma_fence_chain_release() 181 struct dma_fence *prev; in dma_fence_chain_release() 214 struct dma_fence *f = dma_fence_chain_contained(fence); in dma_fence_chain_set_deadline() 242 struct dma_fence *prev, in dma_fence_chain_init() [all …]
|
| H A D | dma-fence.c | 28 static struct dma_fence dma_fence_stub; 131 struct dma_fence *dma_fence_get_stub(void) in dma_fence_get_stub() 159 struct dma_fence *fence; in dma_fence_allocate_private_stub() 442 int dma_fence_signal_locked(struct dma_fence *fence) in dma_fence_signal_locked() 461 int dma_fence_signal(struct dma_fence *fence) in dma_fence_signal() 533 struct dma_fence *fence = in dma_fence_release() 534 container_of(kref, struct dma_fence, refcount); in dma_fence_release() 573 void dma_fence_free(struct dma_fence *fence) in dma_fence_free() 685 int dma_fence_get_status(struct dma_fence *fence) in dma_fence_get_status() 817 struct dma_fence *fence = fences[i]; in dma_fence_test_signaled_any() [all …]
|
| H A D | dma-fence-unwrap.c | 18 static struct dma_fence * 34 struct dma_fence *dma_fence_unwrap_first(struct dma_fence *head, in dma_fence_unwrap_first() 49 struct dma_fence *dma_fence_unwrap_next(struct dma_fence_unwrap *cursor) in dma_fence_unwrap_next() 51 struct dma_fence *tmp; in dma_fence_unwrap_next() 66 struct dma_fence *a = *(struct dma_fence **)_a; in fence_cmp() 67 struct dma_fence *b = *(struct dma_fence **)_b; in fence_cmp() 83 struct dma_fence *__dma_fence_unwrap_merge(unsigned int num_fences, in __dma_fence_unwrap_merge() 84 struct dma_fence **fences, in __dma_fence_unwrap_merge() 87 struct dma_fence *tmp, *unsignaled = NULL, **array; in __dma_fence_unwrap_merge()
|
| H A D | st-dma-fence.c | 20 struct dma_fence base; 99 struct dma_fence *f; in sanitycheck() 115 struct dma_fence *f; in test_signaling() 163 struct dma_fence *f; in test_add_callback() 190 struct dma_fence *f; in test_late_add_callback() 221 struct dma_fence *f; in test_rm_callback() 253 struct dma_fence *f; in test_late_rm_callback() 284 struct dma_fence *f; in test_status() 312 struct dma_fence *f; in test_error() 343 struct dma_fence *f; in test_wait() [all …]
|
| H A D | dma-resv.c | 126 struct dma_fence *fence; in dma_resv_list_free() 217 struct dma_fence *fence; in dma_resv_reserve_fences() 242 struct dma_fence *fence; in dma_resv_reserve_fences() 291 struct dma_fence *old; in dma_resv_add_fence() 354 struct dma_fence *old; in dma_resv_replace_fences() 473 struct dma_fence *fence; in dma_resv_iter_first() 495 struct dma_fence *fence; in dma_resv_iter_next() 525 struct dma_fence *f; in dma_resv_copy_fences() 573 struct dma_fence *fence; in dma_resv_get_fences() 683 struct dma_fence *fence; in dma_resv_wait_timeout() [all …]
|
| H A D | dma-fence-array.c | 18 static const char *dma_fence_array_get_driver_name(struct dma_fence *fence) in dma_fence_array_get_driver_name() 55 static void dma_fence_array_cb_func(struct dma_fence *f, in dma_fence_array_cb_func() 70 static bool dma_fence_array_enable_signaling(struct dma_fence *fence) in dma_fence_array_enable_signaling() 103 static bool dma_fence_array_signaled(struct dma_fence *fence) in dma_fence_array_signaled() 140 static void dma_fence_array_release(struct dma_fence *fence) in dma_fence_array_release() 152 static void dma_fence_array_set_deadline(struct dma_fence *fence, in dma_fence_array_set_deadline() 199 int num_fences, struct dma_fence **fences, in dma_fence_array_init() 253 struct dma_fence **fences, in dma_fence_array_create() 279 bool dma_fence_match_context(struct dma_fence *fence, u64 context) in dma_fence_match_context() 296 struct dma_fence *dma_fence_array_first(struct dma_fence *head) in dma_fence_array_first() [all …]
|
| H A D | st-dma-fence-unwrap.c | 17 struct dma_fence base; 21 static const char *mock_name(struct dma_fence *f) in mock_name() 45 static struct dma_fence *mock_fence(void) in mock_fence() 53 struct dma_fence **fences; in mock_array() 84 static struct dma_fence *mock_chain(struct dma_fence *prev, in mock_chain() 85 struct dma_fence *fence) in mock_chain() 102 struct dma_fence *f, *chain, *array; in sanitycheck() 125 struct dma_fence *fence, *f1, *f2, *array; in unwrap_array() 169 struct dma_fence *fence, *f1, *f2, *chain; in unwrap_chain() 261 struct dma_fence *fence, *f1, *f2, *f3; in unwrap_merge() [all …]
|
| /linux-6.15/drivers/gpu/drm/amd/amdgpu/ |
| H A D | amdgpu_sync.c | 40 struct dma_fence *fence; 66 struct dma_fence *f) in amdgpu_sync_same_dev() 87 static void *amdgpu_sync_get_owner(struct dma_fence *f) in amdgpu_sync_get_owner() 115 struct dma_fence *fence) in amdgpu_sync_keep_later() 184 void *owner, struct dma_fence *f) in amdgpu_sync_test_fence() 247 struct dma_fence *f; in amdgpu_sync_resv() 281 struct dma_fence *f; in amdgpu_sync_kfd() 325 struct dma_fence *f = e->fence; in amdgpu_sync_peek_fence() 361 struct dma_fence *f; in amdgpu_sync_get_fence() 392 struct dma_fence *f; in amdgpu_sync_clone() [all …]
|
| H A D | amdgpu_amdkfd_fence.c | 85 struct amdgpu_amdkfd_fence *to_amdgpu_amdkfd_fence(struct dma_fence *f) in to_amdgpu_amdkfd_fence() 99 static const char *amdkfd_fence_get_driver_name(struct dma_fence *f) in amdkfd_fence_get_driver_name() 104 static const char *amdkfd_fence_get_timeline_name(struct dma_fence *f) in amdkfd_fence_get_timeline_name() 119 static bool amdkfd_fence_enable_signaling(struct dma_fence *f) in amdkfd_fence_enable_signaling() 147 static void amdkfd_fence_release(struct dma_fence *f) in amdkfd_fence_release() 171 bool amdkfd_fence_check_mm(struct dma_fence *f, struct mm_struct *mm) in amdkfd_fence_check_mm()
|
| H A D | amdgpu_fence.c | 53 struct dma_fence base; 143 struct dma_fence *fence; in amdgpu_fence_emit() 145 struct dma_fence __rcu **ptr; in amdgpu_fence_emit() 186 struct dma_fence *old; in amdgpu_fence_emit() 343 struct dma_fence *fence, **ptr; in amdgpu_fence_wait_empty() 416 struct dma_fence *fence; in amdgpu_fence_last_unsignaled_time_us() 447 struct dma_fence *fence; in amdgpu_fence_update_start_timestamp() 709 struct dma_fence *old, **ptr; in amdgpu_fence_driver_clear_job_fences() 744 struct dma_fence *fence; in amdgpu_fence_driver_set_error() 830 struct dma_fence *f = container_of(rcu, struct dma_fence, rcu); in amdgpu_fence_free() [all …]
|
| /linux-6.15/drivers/gpu/drm/scheduler/ |
| H A D | sched_fence.c | 52 struct dma_fence *fence) in drm_sched_fence_set_parent() 66 struct dma_fence *parent) in drm_sched_fence_scheduled() 87 static const char *drm_sched_fence_get_driver_name(struct dma_fence *fence) in drm_sched_fence_get_driver_name() 92 static const char *drm_sched_fence_get_timeline_name(struct dma_fence *f) in drm_sched_fence_get_timeline_name() 100 struct dma_fence *f = container_of(rcu, struct dma_fence, rcu); in drm_sched_fence_free_rcu() 130 static void drm_sched_fence_release_scheduled(struct dma_fence *f) in drm_sched_fence_release_scheduled() 145 static void drm_sched_fence_release_finished(struct dma_fence *f) in drm_sched_fence_release_finished() 152 static void drm_sched_fence_set_deadline_finished(struct dma_fence *f, in drm_sched_fence_set_deadline_finished() 156 struct dma_fence *parent; in drm_sched_fence_set_deadline_finished() 196 struct drm_sched_fence *to_drm_sched_fence(struct dma_fence *f) in to_drm_sched_fence()
|
| /linux-6.15/include/drm/ |
| H A D | drm_syncobj.h | 51 struct dma_fence __rcu *fence; 106 static inline struct dma_fence * 109 struct dma_fence *fence; in drm_syncobj_fence_get() 122 struct dma_fence *fence, 125 struct dma_fence *fence); 128 struct dma_fence **fence); 131 struct dma_fence *fence);
|
| H A D | gpu_scheduler.h | 175 struct dma_fence *dependency; 198 struct dma_fence __rcu *last_scheduled; 269 struct dma_fence scheduled; 281 struct dma_fence finished; 294 struct dma_fence *parent; 310 struct drm_sched_fence *to_drm_sched_fence(struct dma_fence *f); 409 struct dma_fence *(*prepare_job)(struct drm_sched_job *sched_job, 418 struct dma_fence *(*run_job)(struct drm_sched_job *sched_job); 594 struct dma_fence *fence); 606 struct dma_fence *fence);
|
| /linux-6.15/drivers/gpu/drm/i915/ |
| H A D | i915_active.h | 48 void i915_active_noop(struct dma_fence *fence, struct dma_fence_cb *cb); 74 struct dma_fence * 76 struct dma_fence *fence); 100 static inline struct dma_fence * 103 struct dma_fence *fence; in i915_active_fence_get() 169 struct dma_fence * 170 i915_active_set_exclusive(struct i915_active *ref, struct dma_fence *f); 222 struct dma_fence *fence; in __i915_request_await_exclusive()
|
| /linux-6.15/drivers/gpu/drm/vgem/ |
| H A D | vgem_fence.c | 33 struct dma_fence base; 38 static const char *vgem_fence_get_driver_name(struct dma_fence *fence) in vgem_fence_get_driver_name() 43 static const char *vgem_fence_get_timeline_name(struct dma_fence *fence) in vgem_fence_get_timeline_name() 48 static void vgem_fence_release(struct dma_fence *base) in vgem_fence_release() 56 static void vgem_fence_value_str(struct dma_fence *fence, char *str, int size) in vgem_fence_value_str() 61 static void vgem_fence_timeline_value_str(struct dma_fence *fence, char *str, in vgem_fence_timeline_value_str() 84 static struct dma_fence *vgem_fence_create(struct vgem_file *vfile, in vgem_fence_create() 134 struct dma_fence *fence; in vgem_fence_attach_ioctl() 211 struct dma_fence *fence; in vgem_fence_signal_ioctl()
|
| /linux-6.15/drivers/gpu/drm/i915/gem/ |
| H A D | i915_gem_busy.c | 41 __busy_set_if_active(struct dma_fence *fence, u32 (*flag)(u16 id)) in __busy_set_if_active() 63 struct dma_fence **child = array->fences; in __busy_set_if_active() 67 struct dma_fence *current_fence = *child++; in __busy_set_if_active() 98 busy_check_reader(struct dma_fence *fence) in busy_check_reader() 104 busy_check_writer(struct dma_fence *fence) in busy_check_writer() 119 struct dma_fence *fence; in i915_gem_busy_ioctl()
|
| /linux-6.15/drivers/gpu/drm/msm/ |
| H A D | msm_fence.c | 106 struct dma_fence base; 110 static inline struct msm_fence *to_msm_fence(struct dma_fence *fence) in to_msm_fence() 115 static const char *msm_fence_get_driver_name(struct dma_fence *fence) in msm_fence_get_driver_name() 120 static const char *msm_fence_get_timeline_name(struct dma_fence *fence) in msm_fence_get_timeline_name() 126 static bool msm_fence_signaled(struct dma_fence *fence) in msm_fence_signaled() 132 static void msm_fence_set_deadline(struct dma_fence *fence, ktime_t deadline) in msm_fence_set_deadline() 174 struct dma_fence * 187 msm_fence_init(struct dma_fence *fence, struct msm_fence_context *fctx) in msm_fence_init()
|