Home
last modified time | relevance | path

Searched refs:s_fence (Results 1 - 25 of 39) sorted by relevance

12

/kernel/linux/linux-5.10/drivers/gpu/drm/scheduler/
H A Dsched_main.c177 struct drm_sched_fence *s_fence; in drm_sched_dependency_optimized() local
183 s_fence = to_drm_sched_fence(fence); in drm_sched_dependency_optimized()
184 if (s_fence && s_fence->sched == sched) in drm_sched_dependency_optimized()
348 if (bad->s_fence->scheduled.context == in drm_sched_increase_karma()
404 if (s_job->s_fence->parent && in drm_sched_stop()
405 dma_fence_remove_callback(s_job->s_fence->parent, in drm_sched_stop()
423 dma_fence_wait(&s_job->s_fence->finished, false); in drm_sched_stop()
466 struct dma_fence *fence = s_job->s_fence->parent; in drm_sched_start()
509 struct drm_sched_fence *s_fence in drm_sched_resubmit_jobs() local
648 struct drm_sched_fence *s_fence = s_job->s_fence; drm_sched_process_job() local
772 struct drm_sched_fence *s_fence; drm_sched_main() local
[all...]
H A Dsched_entity.c206 drm_sched_fence_finished(job->s_fence); in drm_sched_entity_kill_jobs_cb()
207 WARN_ON(job->s_fence->parent); in drm_sched_entity_kill_jobs_cb()
226 struct drm_sched_fence *s_fence = job->s_fence; in drm_sched_entity_kill_jobs() local
232 drm_sched_fence_scheduled(s_fence); in drm_sched_entity_kill_jobs()
233 dma_fence_set_error(&s_fence->finished, -ESRCH); in drm_sched_entity_kill_jobs()
370 struct drm_sched_fence *s_fence; in drm_sched_entity_add_dependency_cb() local
383 s_fence = to_drm_sched_fence(fence); in drm_sched_entity_add_dependency_cb()
384 if (s_fence && s_fence in drm_sched_entity_add_dependency_cb()
[all...]
H A Dgpu_scheduler_trace.h50 __entry->fence = &sched_job->s_fence->finished;
77 __entry->fence = &sched_job->s_fence->finished;
/kernel/linux/linux-6.6/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_job.c55 amdgpu_ring_soft_recovery(ring, job->vmid, s_job->s_fence->parent)) { in amdgpu_job_timedout()
68 dma_fence_set_error(&s_job->s_fence->finished, -ETIME); in amdgpu_job_timedout()
167 if (job->base.s_fence && job->base.s_fence->finished.ops) in amdgpu_job_free_resources()
168 f = &job->base.s_fence->finished; in amdgpu_job_free_resources()
196 struct dma_fence *fence = &leader->base.s_fence->scheduled; in amdgpu_job_set_gang_leader()
216 if (job->gang_submit != &job->base.s_fence->scheduled) in amdgpu_job_free()
230 f = dma_fence_get(&job->base.s_fence->finished); in amdgpu_job_submit()
280 dma_fence_set_error(&job->base.s_fence->finished, r); in amdgpu_job_prepare_job()
293 finished = &job->base.s_fence in amdgpu_job_run()
333 struct drm_sched_fence *s_fence = s_job->s_fence; amdgpu_job_stop_all_jobs_on_sched() local
345 struct drm_sched_fence *s_fence = s_job->s_fence; amdgpu_job_stop_all_jobs_on_sched() local
[all...]
H A Damdgpu_sync.c68 struct drm_sched_fence *s_fence = to_drm_sched_fence(f); in amdgpu_sync_same_dev() local
70 if (s_fence) { in amdgpu_sync_same_dev()
73 ring = container_of(s_fence->sched, struct amdgpu_ring, sched); in amdgpu_sync_same_dev()
89 struct drm_sched_fence *s_fence; in amdgpu_sync_get_owner() local
95 s_fence = to_drm_sched_fence(f); in amdgpu_sync_get_owner()
96 if (s_fence) in amdgpu_sync_get_owner()
97 return s_fence->owner; in amdgpu_sync_get_owner()
289 struct drm_sched_fence *s_fence = to_drm_sched_fence(f); in amdgpu_sync_peek_fence() local
295 if (ring && s_fence) { in amdgpu_sync_peek_fence()
299 if (s_fence in amdgpu_sync_peek_fence()
[all...]
H A Damdgpu_trace.h36 job->base.s_fence->finished.ops->get_timeline_name(&job->base.s_fence->finished)
182 __entry->context = job->base.s_fence->finished.context;
183 __entry->seqno = job->base.s_fence->finished.seqno;
207 __entry->context = job->base.s_fence->finished.context;
208 __entry->seqno = job->base.s_fence->finished.seqno;
H A Damdgpu_ctx.c171 struct drm_sched_fence *s_fence; in amdgpu_ctx_fence_time() local
177 s_fence = to_drm_sched_fence(fence); in amdgpu_ctx_fence_time()
178 if (!test_bit(DMA_FENCE_FLAG_TIMESTAMP_BIT, &s_fence->scheduled.flags)) in amdgpu_ctx_fence_time()
182 if (!test_bit(DMA_FENCE_FLAG_TIMESTAMP_BIT, &s_fence->finished.flags)) in amdgpu_ctx_fence_time()
183 return ktime_sub(ktime_get(), s_fence->scheduled.timestamp); in amdgpu_ctx_fence_time()
185 return ktime_sub(s_fence->finished.timestamp, in amdgpu_ctx_fence_time()
186 s_fence->scheduled.timestamp); in amdgpu_ctx_fence_time()
H A Damdgpu_ids.c314 r = amdgpu_sync_fence(&(*id)->active, &job->base.s_fence->finished); in amdgpu_vmid_grab_reserved()
375 &job->base.s_fence->finished); in amdgpu_vmid_grab_used()
427 &job->base.s_fence->finished); in amdgpu_vmid_grab()
H A Damdgpu_ib.c153 fence_ctx = job->base.s_fence ? in amdgpu_ib_schedule()
154 job->base.s_fence->scheduled.context : 0; in amdgpu_ib_schedule()
H A Damdgpu_cs.c418 struct drm_sched_fence *s_fence; in amdgpu_cs_p2_dependencies() local
421 s_fence = to_drm_sched_fence(fence); in amdgpu_cs_p2_dependencies()
422 fence = dma_fence_get(&s_fence->scheduled); in amdgpu_cs_p2_dependencies()
1210 struct drm_sched_fence *s_fence = to_drm_sched_fence(fence); in amdgpu_cs_sync_rings() local
1218 if (!s_fence || s_fence->sched != sched) { in amdgpu_cs_sync_rings()
1269 fence = &p->jobs[i]->base.s_fence->scheduled; in amdgpu_cs_submit()
1304 p->fence = dma_fence_get(&leader->base.s_fence->finished); in amdgpu_cs_submit()
1315 &p->jobs[i]->base.s_fence->finished, in amdgpu_cs_submit()
/kernel/linux/linux-6.6/drivers/gpu/drm/scheduler/
H A Dsched_main.c267 struct drm_sched_fence *s_fence = s_job->s_fence; in drm_sched_job_done() local
268 struct drm_gpu_scheduler *sched = s_fence->sched; in drm_sched_job_done()
273 trace_drm_sched_process_job(s_fence); in drm_sched_job_done()
275 dma_fence_get(&s_fence->finished); in drm_sched_job_done()
276 drm_sched_fence_finished(s_fence, result); in drm_sched_job_done()
277 dma_fence_put(&s_fence->finished); in drm_sched_job_done()
466 if (s_job->s_fence->parent && in drm_sched_stop()
467 dma_fence_remove_callback(s_job->s_fence->parent, in drm_sched_stop()
469 dma_fence_put(s_job->s_fence in drm_sched_stop()
584 struct drm_sched_fence *s_fence = s_job->s_fence; drm_sched_resubmit_jobs() local
1014 struct drm_sched_fence *s_fence; drm_sched_main() local
[all...]
H A Dsched_entity.c168 drm_sched_fence_finished(job->s_fence, -ESRCH); in drm_sched_entity_kill_jobs_work()
169 WARN_ON(job->s_fence->parent); in drm_sched_entity_kill_jobs_work()
185 struct drm_sched_fence *s_fence = to_drm_sched_fence(f); in drm_sched_entity_kill_jobs_cb() local
187 if (s_fence && f == &s_fence->scheduled) { in drm_sched_entity_kill_jobs_cb()
193 f = dma_fence_get_rcu(&s_fence->finished); in drm_sched_entity_kill_jobs_cb()
199 dma_fence_put(&s_fence->scheduled); in drm_sched_entity_kill_jobs_cb()
235 struct drm_sched_fence *s_fence = job->s_fence; in drm_sched_entity_kill() local
237 dma_fence_get(&s_fence in drm_sched_entity_kill()
389 struct drm_sched_fence *s_fence; drm_sched_entity_add_dependency_cb() local
[all...]
H A Dsched_fence.c51 static void drm_sched_fence_set_parent(struct drm_sched_fence *s_fence, in drm_sched_fence_set_parent() argument
59 smp_store_release(&s_fence->parent, dma_fence_get(fence)); in drm_sched_fence_set_parent()
61 &s_fence->finished.flags)) in drm_sched_fence_set_parent()
62 dma_fence_set_deadline(fence, s_fence->deadline); in drm_sched_fence_set_parent()
H A Dgpu_scheduler_trace.h50 __entry->fence = &sched_job->s_fence->finished;
/kernel/linux/linux-5.10/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_sync.c66 struct drm_sched_fence *s_fence = to_drm_sched_fence(f); in amdgpu_sync_same_dev() local
68 if (s_fence) { in amdgpu_sync_same_dev()
71 ring = container_of(s_fence->sched, struct amdgpu_ring, sched); in amdgpu_sync_same_dev()
87 struct drm_sched_fence *s_fence; in amdgpu_sync_get_owner() local
93 s_fence = to_drm_sched_fence(f); in amdgpu_sync_get_owner()
94 if (s_fence) in amdgpu_sync_get_owner()
95 return s_fence->owner; in amdgpu_sync_get_owner()
296 struct drm_sched_fence *s_fence = to_drm_sched_fence(f); in amdgpu_sync_peek_fence() local
304 if (ring && s_fence) { in amdgpu_sync_peek_fence()
308 if (s_fence in amdgpu_sync_peek_fence()
[all...]
H A Damdgpu_job.c41 amdgpu_ring_soft_recovery(ring, job->vmid, s_job->s_fence->parent)) { in amdgpu_job_timedout()
118 f = job->base.s_fence ? &job->base.s_fence->finished : job->fence; in amdgpu_job_free_resources()
158 *f = dma_fence_get(&job->base.s_fence->finished); in amdgpu_job_submit()
198 &job->base.s_fence->finished, in amdgpu_job_dependency()
217 finished = &job->base.s_fence->finished; in amdgpu_job_run()
263 struct drm_sched_fence *s_fence = s_job->s_fence; in amdgpu_job_stop_all_jobs_on_sched() local
265 dma_fence_signal(&s_fence->scheduled); in amdgpu_job_stop_all_jobs_on_sched()
266 dma_fence_set_error(&s_fence in amdgpu_job_stop_all_jobs_on_sched()
275 struct drm_sched_fence *s_fence = s_job->s_fence; amdgpu_job_stop_all_jobs_on_sched() local
[all...]
H A Damdgpu_trace.h36 job->base.s_fence->finished.ops->get_timeline_name(&job->base.s_fence->finished)
180 __entry->context = job->base.s_fence->finished.context;
181 __entry->seqno = job->base.s_fence->finished.seqno;
205 __entry->context = job->base.s_fence->finished.context;
206 __entry->seqno = job->base.s_fence->finished.seqno;
H A Damdgpu_ib.c149 fence_ctx = job->base.s_fence ? in amdgpu_ib_schedule()
150 job->base.s_fence->scheduled.context : 0; in amdgpu_ib_schedule()
/kernel/linux/linux-5.10/drivers/gpu/drm/lima/
H A Dlima_trace.h25 __entry->context = task->base.s_fence->finished.context;
26 __entry->seqno = task->base.s_fence->finished.seqno;
H A Dlima_sched.c180 struct dma_fence *fence = dma_fence_get(&task->base.s_fence->finished); in lima_sched_context_queue_task()
230 if (job->s_fence->finished.error < 0) in lima_sched_run_job()
/kernel/linux/linux-6.6/drivers/gpu/drm/lima/
H A Dlima_trace.h25 __entry->context = task->base.s_fence->finished.context;
26 __entry->seqno = task->base.s_fence->finished.seqno;
/kernel/linux/linux-6.6/drivers/gpu/drm/etnaviv/
H A Detnaviv_sched.c25 if (likely(!sched_job->s_fence->finished.error)) in etnaviv_sched_run_job()
113 submit->out_fence = dma_fence_get(&submit->sched_job.s_fence->finished); in etnaviv_sched_push_job()
/kernel/linux/linux-5.10/drivers/gpu/drm/etnaviv/
H A Detnaviv_sched.c77 if (likely(!sched_job->s_fence->finished.error)) in etnaviv_sched_run_job()
163 submit->out_fence = dma_fence_get(&submit->sched_job.s_fence->finished); in etnaviv_sched_push_job()
/kernel/linux/linux-5.10/include/drm/
H A Dgpu_scheduler.h175 * @s_fence: contains the fences for the scheduling of job.
184 * @cb: the callback for the parent fence in s_fence.
193 struct drm_sched_fence *s_fence; member
/kernel/linux/linux-5.10/drivers/gpu/drm/v3d/
H A Dv3d_sched.c96 if (unlikely(job->base.base.s_fence->finished.error)) in v3d_bin_job_run()
148 if (unlikely(job->base.base.s_fence->finished.error)) in v3d_render_job_run()

Completed in 17 milliseconds

12