Searched refs:fence (Results 1 - 25 of 406) sorted by relevance

1234567891011>>

/linux-master/include/trace/events/
H A Ddma_fence.h14 TP_PROTO(struct dma_fence *fence),
16 TP_ARGS(fence),
19 __string(driver, fence->ops->get_driver_name(fence))
20 __string(timeline, fence->ops->get_timeline_name(fence))
26 __assign_str(driver, fence->ops->get_driver_name(fence));
27 __assign_str(timeline, fence->ops->get_timeline_name(fence));
[all...]
/linux-master/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_amdkfd_fence.c23 #include <linux/dma-fence.h>
41 * All the BOs in a process share an eviction fence. When process X wants
59 * user queues and signal fence. The work item will also start another delayed
67 struct amdgpu_amdkfd_fence *fence; local
69 fence = kzalloc(sizeof(*fence), GFP_KERNEL);
70 if (fence == NULL)
75 fence->mm = mm;
76 get_task_comm(fence->timeline_name, current);
77 spin_lock_init(&fence
87 struct amdgpu_amdkfd_fence *fence; local
106 struct amdgpu_amdkfd_fence *fence = to_amdgpu_amdkfd_fence(f); local
121 struct amdgpu_amdkfd_fence *fence = to_amdgpu_amdkfd_fence(f); local
149 struct amdgpu_amdkfd_fence *fence = to_amdgpu_amdkfd_fence(f); local
173 struct amdgpu_amdkfd_fence *fence = to_amdgpu_amdkfd_fence(f); local
[all...]
/linux-master/drivers/gpu/drm/i915/
H A Di915_sw_fence.h12 #include <linux/dma-fence.h>
42 void __i915_sw_fence_init(struct i915_sw_fence *fence,
47 #define i915_sw_fence_init(fence, fn) \
52 __i915_sw_fence_init((fence), (fn), #fence, &__key); \
55 #define i915_sw_fence_init(fence, fn) \
58 __i915_sw_fence_init((fence), (fn), NULL, NULL); \
62 void i915_sw_fence_reinit(struct i915_sw_fence *fence);
65 void i915_sw_fence_fini(struct i915_sw_fence *fence);
67 static inline void i915_sw_fence_fini(struct i915_sw_fence *fence) {} argument
81 struct i915_sw_fence *fence; member in struct:i915_sw_dma_fence_cb
101 i915_sw_fence_signaled(const struct i915_sw_fence *fence) argument
106 i915_sw_fence_done(const struct i915_sw_fence *fence) argument
111 i915_sw_fence_wait(struct i915_sw_fence *fence) argument
117 i915_sw_fence_set_error_once(struct i915_sw_fence *fence, int error) argument
[all...]
H A Di915_sw_fence.c8 #include <linux/dma-fence.h>
49 static inline void debug_fence_init(struct i915_sw_fence *fence) argument
51 debug_object_init(fence, &i915_sw_fence_debug_descr);
54 static inline void debug_fence_init_onstack(struct i915_sw_fence *fence) argument
56 debug_object_init_on_stack(fence, &i915_sw_fence_debug_descr);
59 static inline void debug_fence_activate(struct i915_sw_fence *fence) argument
61 debug_object_activate(fence, &i915_sw_fence_debug_descr);
64 static inline void debug_fence_set_state(struct i915_sw_fence *fence, argument
67 debug_object_active_state(fence, &i915_sw_fence_debug_descr, old, new);
70 static inline void debug_fence_deactivate(struct i915_sw_fence *fence) argument
75 debug_fence_destroy(struct i915_sw_fence *fence) argument
80 debug_fence_free(struct i915_sw_fence *fence) argument
86 debug_fence_assert(struct i915_sw_fence *fence) argument
93 debug_fence_init(struct i915_sw_fence *fence) argument
97 debug_fence_init_onstack(struct i915_sw_fence *fence) argument
101 debug_fence_activate(struct i915_sw_fence *fence) argument
105 debug_fence_set_state(struct i915_sw_fence *fence, int old, int new) argument
110 debug_fence_deactivate(struct i915_sw_fence *fence) argument
114 debug_fence_destroy(struct i915_sw_fence *fence) argument
118 debug_fence_free(struct i915_sw_fence *fence) argument
122 debug_fence_assert(struct i915_sw_fence *fence) argument
128 __i915_sw_fence_notify(struct i915_sw_fence *fence, enum i915_sw_fence_notify state) argument
135 i915_sw_fence_fini(struct i915_sw_fence *fence) argument
141 __i915_sw_fence_wake_up_all(struct i915_sw_fence *fence, struct list_head *continuation) argument
191 __i915_sw_fence_complete(struct i915_sw_fence *fence, struct list_head *continuation) argument
212 i915_sw_fence_complete(struct i915_sw_fence *fence) argument
222 i915_sw_fence_await(struct i915_sw_fence *fence) argument
239 __i915_sw_fence_init(struct i915_sw_fence *fence, i915_sw_fence_notify_t fn, const char *name, struct lock_class_key *key) argument
253 i915_sw_fence_reinit(struct i915_sw_fence *fence) argument
263 i915_sw_fence_commit(struct i915_sw_fence *fence) argument
282 __i915_sw_fence_check_if_after(struct i915_sw_fence *fence, const struct i915_sw_fence * const signaler) argument
304 __i915_sw_fence_clear_checked_bit(struct i915_sw_fence *fence) argument
319 i915_sw_fence_check_if_after(struct i915_sw_fence *fence, const struct i915_sw_fence * const signaler) argument
333 i915_sw_fence_check_if_after(struct i915_sw_fence *fence, const struct i915_sw_fence * const signaler) argument
340 __i915_sw_fence_await_sw_fence(struct i915_sw_fence *fence, struct i915_sw_fence *signaler, wait_queue_entry_t *wq, gfp_t gfp) argument
396 i915_sw_fence_await_sw_fence(struct i915_sw_fence *fence, struct i915_sw_fence *signaler, wait_queue_entry_t *wq) argument
403 i915_sw_fence_await_sw_fence_gfp(struct i915_sw_fence *fence, struct i915_sw_fence *signaler, gfp_t gfp) argument
431 struct i915_sw_fence *fence; local
452 struct i915_sw_fence *fence; local
474 i915_sw_fence_await_dma_fence(struct i915_sw_fence *fence, struct dma_fence *dma, unsigned long timeout, gfp_t gfp) argument
546 __i915_sw_fence_await_dma_fence(struct i915_sw_fence *fence, struct dma_fence *dma, struct i915_sw_dma_fence_cb *cb) argument
572 i915_sw_fence_await_reservation(struct i915_sw_fence *fence, struct dma_resv *resv, bool write, unsigned long timeout, gfp_t gfp) argument
[all...]
/linux-master/drivers/gpu/drm/i915/selftests/
H A Dlib_sw_fence.c27 /* Small library of different fence types useful for writing tests */
30 nop_fence_notify(struct i915_sw_fence *fence, enum i915_sw_fence_notify state) argument
35 void __onstack_fence_init(struct i915_sw_fence *fence, argument
39 debug_fence_init_onstack(fence);
41 __init_waitqueue_head(&fence->wait, name, key);
42 atomic_set(&fence->pending, 1);
43 fence->error = 0;
44 fence->fn = nop_fence_notify;
47 void onstack_fence_fini(struct i915_sw_fence *fence) argument
49 if (!fence
85 struct i915_sw_fence fence; member in struct:heap_fence
93 heap_fence_notify(struct i915_sw_fence *fence, enum i915_sw_fence_notify state) argument
131 heap_fence_put(struct i915_sw_fence *fence) argument
[all...]
H A Dlib_sw_fence.h16 #define onstack_fence_init(fence) \
20 __onstack_fence_init((fence), #fence, &__key); \
23 #define onstack_fence_init(fence) \
24 __onstack_fence_init((fence), NULL, NULL)
27 void __onstack_fence_init(struct i915_sw_fence *fence,
30 void onstack_fence_fini(struct i915_sw_fence *fence);
33 struct i915_sw_fence fence; member in struct:timed_fence
41 void heap_fence_put(struct i915_sw_fence *fence);
/linux-master/drivers/gpu/drm/v3d/
H A Dv3d_fence.c8 struct v3d_fence *fence; local
10 fence = kzalloc(sizeof(*fence), GFP_KERNEL);
11 if (!fence)
14 fence->dev = &v3d->drm;
15 fence->queue = queue;
16 fence->seqno = ++v3d->queue[queue].emit_seqno;
17 dma_fence_init(&fence->base, &v3d_fence_ops, &v3d->job_lock,
18 v3d->queue[queue].fence_context, fence->seqno);
20 return &fence
23 v3d_fence_get_driver_name(struct dma_fence *fence) argument
28 v3d_fence_get_timeline_name(struct dma_fence *fence) argument
[all...]
/linux-master/tools/testing/selftests/sync/
H A Dsync_alloc.c46 int timeline, fence, valid; local
52 fence = sw_sync_fence_create(timeline, "allocFence", 1);
53 valid = sw_sync_fence_is_valid(fence);
54 ASSERT(valid, "Failure allocating fence\n");
56 sw_sync_fence_destroy(fence);
63 int fence, timeline; local
68 fence = sw_sync_fence_create(-1, "fence", 1);
69 ASSERT(fence < 0, "Success allocating negative fence\
[all...]
H A Dsync_merge.c2 * sync fence merge tests
34 int fence, valid, merged; local
40 fence = sw_sync_fence_create(timeline, "allocFence", 5);
41 valid = sw_sync_fence_is_valid(fence);
42 ASSERT(valid, "Failure allocating fence\n");
44 merged = sync_merge("mergeFence", fence, fence);
45 valid = sw_sync_fence_is_valid(fence);
46 ASSERT(valid, "Failure merging fence\n");
49 "fence signale
[all...]
/linux-master/include/linux/
H A Ddma-fence.h32 * @refcount: refcount for this fence
33 * @ops: dma_fence_ops associated with this fence
34 * @rcu: used for releasing fence with kfree_rcu
37 * @context: execution context this fence belongs to, returned by
39 * @seqno: the sequence number of this fence inside the execution context,
40 * can be compared to decide which fence would be signaled later.
42 * @timestamp: Timestamp when the fence was signaled.
44 * dma_fence_signal, indicates that the fence has completed with an error.
50 * DMA_FENCE_FLAG_SIGNALED_BIT - fence is already signaled
51 * DMA_FENCE_FLAG_TIMESTAMP_BIT - timestamp recorded for fence signalin
294 dma_fence_put(struct dma_fence *fence) argument
306 dma_fence_get(struct dma_fence *fence) argument
320 dma_fence_get_rcu(struct dma_fence *fence) argument
348 struct dma_fence *fence; local
420 dma_fence_is_signaled_locked(struct dma_fence *fence) argument
450 dma_fence_is_signaled(struct dma_fence *fence) argument
557 dma_fence_get_status_locked(struct dma_fence *fence) argument
578 dma_fence_set_error(struct dma_fence *fence, int error) argument
595 dma_fence_timestamp(struct dma_fence *fence) argument
628 dma_fence_wait(struct dma_fence *fence, bool intr) argument
656 dma_fence_is_array(struct dma_fence *fence) argument
667 dma_fence_is_chain(struct dma_fence *fence) argument
680 dma_fence_is_container(struct dma_fence *fence) argument
[all...]
H A Ddma-fence-array.h3 * fence-array: aggregates fence to be waited together
15 #include <linux/dma-fence.h>
19 * struct dma_fence_array_cb - callback helper for fence array
20 * @cb: fence callback structure for signaling
21 * @array: reference to the parent fence array object
29 * struct dma_fence_array - fence to represent an array of fences
30 * @base: fence base class
31 * @lock: spinlock for fence handling
49 * to_dma_fence_array - cast a fence t
56 to_dma_fence_array(struct dma_fence *fence) argument
[all...]
H A Ddma-fence-chain.h3 * fence-chain: chain fences together in a timeline
13 #include <linux/dma-fence.h>
18 * struct dma_fence_chain - fence to represent an node of a fence chain
19 * @base: fence base class
20 * @prev: previous fence of the chain
22 * @fence: encapsulated fence
23 * @lock: spinlock for fence handling
29 struct dma_fence *fence; member in struct:dma_fence_chain
61 to_dma_fence_chain(struct dma_fence *fence) argument
77 dma_fence_chain_contained(struct dma_fence *fence) argument
[all...]
/linux-master/drivers/dma-buf/
H A Ddma-fence.c16 #include <linux/dma-fence.h>
31 * fence context counter: each execution context should have its own
32 * fence context, this allows checking if fences belong to the same
45 * A fence is initialized using dma_fence_init() and completed using
60 * fence to be updated.
69 * DOC: fence cross-driver contract
95 * This means any code required for fence completion cannot acquire a
100 * callbacks. This means any code required for fence completion cannot
105 * for fence completion cannot allocate memory with GFP_NOFS or GFP_NOIO.
114 static const char *dma_fence_stub_get_name(struct dma_fence *fence) argument
159 struct dma_fence *fence; local
367 dma_fence_signal_timestamp_locked(struct dma_fence *fence, ktime_t timestamp) argument
410 dma_fence_signal_timestamp(struct dma_fence *fence, ktime_t timestamp) argument
442 dma_fence_signal_locked(struct dma_fence *fence) argument
461 dma_fence_signal(struct dma_fence *fence) argument
501 dma_fence_wait_timeout(struct dma_fence *fence, bool intr, signed long timeout) argument
533 struct dma_fence *fence = local
573 dma_fence_free(struct dma_fence *fence) argument
579 __dma_fence_enable_signaling(struct dma_fence *fence) argument
611 dma_fence_enable_sw_signaling(struct dma_fence *fence) argument
643 dma_fence_add_callback(struct dma_fence *fence, struct dma_fence_cb *cb, dma_fence_func_t func) argument
685 dma_fence_get_status(struct dma_fence *fence) argument
717 dma_fence_remove_callback(struct dma_fence *fence, struct dma_fence_cb *cb) argument
740 dma_fence_default_wait_cb(struct dma_fence *fence, struct dma_fence_cb *cb) argument
761 dma_fence_default_wait(struct dma_fence *fence, bool intr, signed long timeout) argument
817 struct dma_fence *fence = fences[i]; local
876 struct dma_fence *fence = fences[i]; local
969 dma_fence_set_deadline(struct dma_fence *fence, ktime_t deadline) argument
983 dma_fence_describe(struct dma_fence *fence, struct seq_file *seq) argument
1008 dma_fence_init(struct dma_fence *fence, const struct dma_fence_ops *ops, spinlock_t *lock, u64 context, u64 seqno) argument
[all...]
H A DMakefile2 obj-y := dma-buf.o dma-fence.o dma-fence-array.o dma-fence-chain.o \
3 dma-fence-unwrap.o dma-resv.o
13 st-dma-fence.o \
14 st-dma-fence-chain.o \
15 st-dma-fence-unwrap.o \
/linux-master/drivers/gpu/drm/scheduler/
H A Dsched_fence.c50 struct dma_fence *fence)
55 * fence's parent set before test_bit()
57 smp_store_release(&s_fence->parent, dma_fence_get(fence));
60 dma_fence_set_deadline(fence, s_fence->deadline);
63 void drm_sched_fence_scheduled(struct drm_sched_fence *fence, argument
66 /* Set the parent before signaling the scheduled fence, such that,
73 drm_sched_fence_set_parent(fence, parent);
75 dma_fence_signal(&fence->scheduled);
78 void drm_sched_fence_finished(struct drm_sched_fence *fence, int result) argument
81 dma_fence_set_error(&fence
49 drm_sched_fence_set_parent(struct drm_sched_fence *s_fence, struct dma_fence *fence) argument
85 drm_sched_fence_get_driver_name(struct dma_fence *fence) argument
92 struct drm_sched_fence *fence = to_drm_sched_fence(f); local
99 struct drm_sched_fence *fence = to_drm_sched_fence(f); local
113 drm_sched_fence_free(struct drm_sched_fence *fence) argument
130 struct drm_sched_fence *fence = to_drm_sched_fence(f); local
145 struct drm_sched_fence *fence = to_drm_sched_fence(f); local
153 struct drm_sched_fence *fence = to_drm_sched_fence(f); local
209 struct drm_sched_fence *fence = NULL; local
221 drm_sched_fence_init(struct drm_sched_fence *fence, struct drm_sched_entity *entity) argument
[all...]
/linux-master/drivers/gpu/drm/vc4/
H A Dvc4_fence.c26 static const char *vc4_fence_get_driver_name(struct dma_fence *fence) argument
31 static const char *vc4_fence_get_timeline_name(struct dma_fence *fence) argument
36 static bool vc4_fence_signaled(struct dma_fence *fence) argument
38 struct vc4_fence *f = to_vc4_fence(fence);
/linux-master/drivers/gpu/drm/vgem/
H A Dvgem_fence.c38 static const char *vgem_fence_get_driver_name(struct dma_fence *fence) argument
43 static const char *vgem_fence_get_timeline_name(struct dma_fence *fence) argument
50 struct vgem_fence *fence = container_of(base, typeof(*fence), base); local
52 del_timer_sync(&fence->timer);
53 dma_fence_free(&fence->base);
56 static void vgem_fence_value_str(struct dma_fence *fence, char *str, int size) argument
58 snprintf(str, size, "%llu", fence->seqno);
61 static void vgem_fence_timeline_value_str(struct dma_fence *fence, char *str, argument
65 dma_fence_is_signaled(fence)
79 struct vgem_fence *fence = from_timer(fence, t, timer); local
87 struct vgem_fence *fence; local
134 struct dma_fence *fence; local
211 struct dma_fence *fence; local
[all...]
/linux-master/drivers/gpu/drm/i915/gt/
H A Dintel_ggtt_fencing.c18 * DOC: fence register handling
37 * dynamically associated with objects. Furthermore fence state is committed to
41 * cases the fence can be removed forcefully with i915_gem_object_put_fence().
49 static struct drm_i915_private *fence_to_i915(struct i915_fence_reg *fence) argument
51 return fence->ggtt->vm.i915;
54 static struct intel_uncore *fence_to_uncore(struct i915_fence_reg *fence) argument
56 return fence->ggtt->vm.gt->uncore;
59 static void i965_write_fence_reg(struct i915_fence_reg *fence) argument
65 if (GRAPHICS_VER(fence_to_i915(fence)) >= 6) {
66 fence_reg_lo = FENCE_REG_GEN6_LO(fence
113 i915_write_fence_reg(struct i915_fence_reg *fence) argument
147 i830_write_fence_reg(struct i915_fence_reg *fence) argument
172 fence_write(struct i915_fence_reg *fence) argument
195 gpu_uses_fence_registers(struct i915_fence_reg *fence) argument
200 fence_update(struct i915_fence_reg *fence, struct i915_vma *vma) argument
293 struct i915_fence_reg *fence = vma->fence; local
323 fence_is_active(const struct i915_fence_reg *fence) argument
331 struct i915_fence_reg *fence, *fn; local
364 struct i915_fence_reg *fence; local
456 struct i915_fence_reg *fence; local
491 i915_unreserve_fence(struct i915_fence_reg *fence) argument
873 struct i915_fence_reg *fence = &ggtt->fence_regs[i]; local
890 struct i915_fence_reg *fence = &ggtt->fence_regs[i]; local
[all...]
/linux-master/drivers/gpu/drm/i915/gem/
H A Di915_gem_wait.c7 #include <linux/dma-fence-array.h>
8 #include <linux/dma-fence-chain.h>
18 i915_gem_object_wait_fence(struct dma_fence *fence, argument
24 if (test_bit(DMA_FENCE_FLAG_SIGNALED_BIT, &fence->flags))
27 if (dma_fence_is_i915(fence))
28 return i915_request_wait_timeout(to_request(fence), flags, timeout);
30 return dma_fence_wait_timeout(fence,
39 struct dma_fence *fence; local
48 * we only happen to look at the final fence in the sequence (because
59 dma_resv_for_each_fence_unlocked(&cursor, fence)
72 struct dma_fence *fence; local
92 fence_set_priority(struct dma_fence *fence, const struct i915_sched_attr *attr) argument
110 __dma_fence_is_chain(const struct dma_fence *fence) argument
115 i915_gem_fence_wait_priority(struct dma_fence *fence, const struct i915_sched_attr *attr) argument
153 struct dma_fence *fence; local
[all...]
H A Di915_gem_busy.c7 #include <linux/dma-fence-array.h>
41 __busy_set_if_active(struct dma_fence *fence, u32 (*flag)(u16 id)) argument
46 * We have to check the current hw status of the fence as the uABI
54 * 1. A composite fence (dma_fence_array) constructed of i915 requests
56 * composite fence into individual i915 requests and check the status of
61 if (dma_fence_is_array(fence)) {
62 struct dma_fence_array *array = to_dma_fence_array(fence);
69 /* Not an i915 fence, can't be busy per above */
84 if (!dma_fence_is_i915(fence))
87 rq = to_request(fence);
98 busy_check_reader(struct dma_fence *fence) argument
104 busy_check_writer(struct dma_fence *fence) argument
119 struct dma_fence *fence; local
[all...]
/linux-master/drivers/gpu/host1x/
H A Dintr.c11 #include "fence.h"
15 struct host1x_syncpt_fence *fence)
20 if ((s32)(fence_in_list->threshold - fence->threshold) <= 0) {
22 list_add(&fence->list, &fence_in_list->list);
28 list_add(&fence->list, &list->list);
33 struct host1x_syncpt_fence *fence; local
36 fence = list_first_entry(&sp->fences.list, struct host1x_syncpt_fence, list);
38 host1x_hw_intr_set_syncpt_threshold(host, sp->id, fence->threshold);
45 void host1x_intr_add_fence_locked(struct host1x *host, struct host1x_syncpt_fence *fence) argument
47 struct host1x_fence_list *fence_list = &fence
14 host1x_intr_add_fence_to_list(struct host1x_fence_list *list, struct host1x_syncpt_fence *fence) argument
55 host1x_intr_remove_fence(struct host1x *host, struct host1x_syncpt_fence *fence) argument
78 struct host1x_syncpt_fence *fence, *tmp; local
[all...]
/linux-master/drivers/gpu/drm/nouveau/
H A Dnouveau_fence.c42 from_fence(struct dma_fence *fence) argument
44 return container_of(fence, struct nouveau_fence, base);
48 nouveau_fctx(struct nouveau_fence *fence) argument
50 return container_of(fence->base.lock, struct nouveau_fence_chan, lock);
54 nouveau_fence_signal(struct nouveau_fence *fence) argument
58 dma_fence_signal_locked(&fence->base);
59 list_del(&fence->head);
60 rcu_assign_pointer(fence->channel, NULL);
62 if (test_bit(DMA_FENCE_FLAG_USER_BITS, &fence->base.flags)) {
63 struct nouveau_fence_chan *fctx = nouveau_fctx(fence);
74 nouveau_local_fence(struct dma_fence *fence, struct nouveau_drm *drm) argument
86 struct nouveau_fence *fence; local
133 struct nouveau_fence *fence; local
159 struct nouveau_fence *fence; local
220 nouveau_fence_emit(struct nouveau_fence *fence) argument
259 nouveau_fence_done(struct nouveau_fence *fence) argument
282 struct nouveau_fence *fence = from_fence(f); local
315 nouveau_fence_wait_busy(struct nouveau_fence *fence, bool intr) argument
340 nouveau_fence_wait(struct nouveau_fence *fence, bool lazy, bool intr) argument
373 struct dma_fence *fence; local
421 struct nouveau_fence *fence; local
453 nouveau_fence_get_get_driver_name(struct dma_fence *fence) argument
460 struct nouveau_fence *fence = from_fence(f); local
474 struct nouveau_fence *fence = from_fence(f); local
490 struct nouveau_fence *fence = from_fence(f); local
515 struct nouveau_fence *fence = from_fence(f); local
533 struct nouveau_fence *fence = from_fence(f); local
[all...]
/linux-master/drivers/gpu/drm/radeon/
H A Dradeon_sync.c55 * radeon_sync_fence - use the semaphore to sync to a fence
57 * @sync: sync object to add fence to
58 * @fence: fence to sync to
60 * Sync to the fence using the semaphore objects
63 struct radeon_fence *fence)
67 if (!fence)
70 other = sync->sync_to[fence->ring];
71 sync->sync_to[fence->ring] = radeon_fence_later(fence, othe
62 radeon_sync_fence(struct radeon_sync *sync, struct radeon_fence *fence) argument
95 struct radeon_fence *fence; local
129 struct radeon_fence *fence = sync->sync_to[i]; local
196 radeon_sync_free(struct radeon_device *rdev, struct radeon_sync *sync, struct radeon_fence *fence) argument
[all...]
/linux-master/include/drm/
H A Ddrm_syncobj.h29 #include <linux/dma-fence.h>
30 #include <linux/dma-fence-chain.h>
45 * @fence:
46 * NULL or a pointer to the fence bound to this object.
51 struct dma_fence __rcu *fence; member in struct:drm_syncobj
53 * @cb_list: List of callbacks to call when the &fence gets replaced.
61 * @lock: Protects &cb_list and &ev_fd_list, and write-locks &fence.
96 * drm_syncobj_fence_get - get a reference to a fence in a sync object
99 * This acquires additional reference to &drm_syncobj.fence contained in @obj,
104 * Either the fence o
109 struct dma_fence *fence; local
[all...]
/linux-master/drivers/gpu/drm/xe/
H A Dxe_hw_fence.c45 struct xe_hw_fence *fence = local
48 if (!WARN_ON_ONCE(!fence))
49 kmem_cache_free(xe_hw_fence_slab, fence);
55 struct xe_hw_fence *fence, *next; local
61 list_for_each_entry_safe(fence, next, &irq->pending, irq_link) {
62 struct dma_fence *dma_fence = &fence->dma;
64 trace_xe_hw_fence_try_signal(fence);
66 trace_xe_hw_fence_signal(fence);
67 list_del_init(&fence->irq_link);
86 struct xe_hw_fence *fence, *nex local
142 xe_hw_fence_irq(struct xe_hw_fence *fence) argument
149 struct xe_hw_fence *fence = to_xe_hw_fence(dma_fence); local
156 struct xe_hw_fence *fence = to_xe_hw_fence(dma_fence); local
163 struct xe_hw_fence *fence = to_xe_hw_fence(dma_fence); local
173 struct xe_hw_fence *fence = to_xe_hw_fence(dma_fence); local
188 struct xe_hw_fence *fence = to_xe_hw_fence(dma_fence); local
203 to_xe_hw_fence(struct dma_fence *fence) argument
214 struct xe_hw_fence *fence; local
[all...]

Completed in 176 milliseconds

1234567891011>>