Home
last modified time | relevance | path

Searched refs:s_fence (Results 1 – 25 of 41) sorted by relevance

12

/linux-6.15/drivers/gpu/drm/scheduler/
H A Dsched_main.c398 struct drm_sched_fence *s_fence = s_job->s_fence; in drm_sched_job_done() local
406 dma_fence_get(&s_fence->finished); in drm_sched_job_done()
408 dma_fence_put(&s_fence->finished); in drm_sched_job_done()
622 if (s_job->s_fence->parent && in drm_sched_stop()
626 s_job->s_fence->parent = NULL; in drm_sched_stop()
732 struct drm_sched_fence *s_fence = s_job->s_fence; in drm_sched_resubmit_jobs() local
748 s_job->s_fence->parent = NULL; in drm_sched_resubmit_jobs()
814 if (!job->s_fence) in drm_sched_job_init()
1039 job->s_fence = NULL; in drm_sched_job_cleanup()
1201 struct drm_sched_fence *s_fence; in drm_sched_run_job_work() local
[all …]
H A Dsched_entity.c180 WARN_ON(job->s_fence->parent); in drm_sched_entity_kill_jobs_work()
198 if (s_fence && f == &s_fence->scheduled) { in drm_sched_entity_kill_jobs_cb()
204 f = dma_fence_get_rcu(&s_fence->finished); in drm_sched_entity_kill_jobs_cb()
210 dma_fence_put(&s_fence->scheduled); in drm_sched_entity_kill_jobs_cb()
246 struct drm_sched_fence *s_fence = job->s_fence; in drm_sched_entity_kill() local
248 dma_fence_get(&s_fence->finished); in drm_sched_entity_kill()
260 prev = &s_fence->finished; in drm_sched_entity_kill()
407 struct drm_sched_fence *s_fence; in drm_sched_entity_add_dependency_cb() local
420 s_fence = to_drm_sched_fence(fence); in drm_sched_entity_add_dependency_cb()
421 if (!fence->error && s_fence && s_fence->sched == sched && in drm_sched_entity_add_dependency_cb()
[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;
/linux-6.15/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_job.c273 if (job->base.s_fence && job->base.s_fence->finished.ops) in amdgpu_job_free_resources()
274 f = &job->base.s_fence->finished; in amdgpu_job_free_resources()
336 f = dma_fence_get(&job->base.s_fence->finished); in amdgpu_job_submit()
400 dma_fence_set_error(&job->base.s_fence->finished, r); in amdgpu_job_prepare_job()
413 finished = &job->base.s_fence->finished; in amdgpu_job_run()
472 struct drm_sched_fence *s_fence = s_job->s_fence; in amdgpu_job_stop_all_jobs_on_sched() local
474 dma_fence_signal(&s_fence->scheduled); in amdgpu_job_stop_all_jobs_on_sched()
476 dma_fence_signal(&s_fence->finished); in amdgpu_job_stop_all_jobs_on_sched()
484 struct drm_sched_fence *s_fence = s_job->s_fence; in amdgpu_job_stop_all_jobs_on_sched() local
486 dma_fence_set_error(&s_fence->finished, -EHWPOISON); in amdgpu_job_stop_all_jobs_on_sched()
[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()
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()
326 struct drm_sched_fence *s_fence = to_drm_sched_fence(f); in amdgpu_sync_peek_fence() local
332 if (ring && s_fence) { in amdgpu_sync_peek_fence()
336 if (s_fence->sched == &ring->sched) { in amdgpu_sync_peek_fence()
337 if (dma_fence_is_signaled(&s_fence->scheduled)) 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.c172 struct drm_sched_fence *s_fence; in amdgpu_ctx_fence_time() local
178 s_fence = to_drm_sched_fence(fence); in amdgpu_ctx_fence_time()
179 if (!test_bit(DMA_FENCE_FLAG_TIMESTAMP_BIT, &s_fence->scheduled.flags)) in amdgpu_ctx_fence_time()
183 if (!test_bit(DMA_FENCE_FLAG_TIMESTAMP_BIT, &s_fence->finished.flags)) in amdgpu_ctx_fence_time()
184 return ktime_sub(ktime_get(), s_fence->scheduled.timestamp); in amdgpu_ctx_fence_time()
186 return ktime_sub(s_fence->finished.timestamp, in amdgpu_ctx_fence_time()
187 s_fence->scheduled.timestamp); in amdgpu_ctx_fence_time()
H A Damdgpu_ids.c316 r = amdgpu_sync_fence(&(*id)->active, &job->base.s_fence->finished, in amdgpu_vmid_grab_reserved()
376 &job->base.s_fence->finished, in amdgpu_vmid_grab_used()
429 &job->base.s_fence->finished, in amdgpu_vmid_grab()
H A Damdgpu_cs.c423 struct drm_sched_fence *s_fence; in amdgpu_cs_p2_dependencies() local
426 s_fence = to_drm_sched_fence(fence); in amdgpu_cs_p2_dependencies()
427 fence = dma_fence_get(&s_fence->scheduled); in amdgpu_cs_p2_dependencies()
1241 struct drm_sched_fence *s_fence = to_drm_sched_fence(fence); in amdgpu_cs_sync_rings() local
1249 if (!s_fence || s_fence->sched != sched) { in amdgpu_cs_sync_rings()
1301 fence = &p->jobs[i]->base.s_fence->scheduled; in amdgpu_cs_submit()
1336 p->fence = dma_fence_get(&leader->base.s_fence->finished); in amdgpu_cs_submit()
1347 &p->jobs[i]->base.s_fence->finished, in amdgpu_cs_submit()
H A Damdgpu_ib.c151 fence_ctx = job->base.s_fence ? in amdgpu_ib_schedule()
152 job->base.s_fence->scheduled.context : 0; in amdgpu_ib_schedule()
/linux-6.15/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.c173 struct dma_fence *fence = dma_fence_get(&task->base.s_fence->finished); in lima_sched_context_queue_task()
211 if (job->s_fence->finished.error < 0) in lima_sched_run_job()
/linux-6.15/include/trace/events/
H A Damdxdna.h45 __entry->fence_context = sched_job->s_fence->finished.context;
46 __entry->fence_seqno = sched_job->s_fence->finished.seqno;
/linux-6.15/drivers/gpu/drm/etnaviv/
H A Detnaviv_sched.c26 if (likely(!sched_job->s_fence->finished.error)) in etnaviv_sched_run_job()
125 submit->out_fence = dma_fence_get(&submit->sched_job.s_fence->finished); in etnaviv_sched_push_job()
/linux-6.15/drivers/gpu/drm/xe/
H A Dxe_exec.c312 drm_gpuvm_resv_add_fence(&vm->gpuvm, exec, &job->drm.s_fence->finished, in xe_exec_ioctl()
317 xe_sync_entry_signal(&syncs[i], &job->drm.s_fence->finished); in xe_exec_ioctl()
324 xe_exec_queue_last_fence_set(q, vm, &job->drm.s_fence->finished); in xe_exec_ioctl()
H A Dxe_gsc_submit.c208 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_gsc_pkt_submit_kernel()
H A Dxe_pxp_submit.c305 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_pxp_submit_session_termination()
368 fence = dma_fence_get(&job->drm.s_fence->finished); in pxp_pkt_submit()
H A Dxe_gt.c165 fence = dma_fence_get(&job->drm.s_fence->finished); in emit_nop_job()
251 fence = dma_fence_get(&job->drm.s_fence->finished); in emit_wa_job()
H A Dxe_migrate.c910 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_migrate_copy()
1162 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_migrate_clear()
1479 fence = dma_fence_get(&job->drm.s_fence->finished); in __xe_migrate_update_pgtables()
1663 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_migrate_vram()
/linux-6.15/drivers/gpu/drm/imagination/
H A Dpvr_queue.c487 if (f == &job->base.s_fence->scheduled) in pvr_queue_get_paired_frag_job_dep()
635 &job->paired_job->base.s_fence->scheduled == fence) in pvr_queue_submit_job_to_cccb()
785 WARN_ON(job->base.s_fence->parent); in pvr_queue_start()
786 job->base.s_fence->parent = dma_fence_get(job->done_fence); in pvr_queue_start()
837 job->base.s_fence->parent = dma_fence_get(job->done_fence); in pvr_queue_timedout_job()
1134 return &job->base.s_fence->finished; in pvr_queue_job_arm()
1149 if (job->base.s_fence) in pvr_queue_job_cleanup()
1169 queue->last_queued_job_scheduled_fence = dma_fence_get(&job->base.s_fence->scheduled); in pvr_queue_job_push()
H A Dpvr_sync.c231 struct drm_sched_fence *s_fence = to_drm_sched_fence(uf); in pvr_sync_add_dep_to_job() local
237 dma_fence_get(&s_fence->scheduled)); in pvr_sync_add_dep_to_job()
H A Dpvr_job.c586 dma_resv_add_fence(obj->resv, &job->base.s_fence->finished, usage); in update_job_resvs()
612 &geom_job->base.s_fence->scheduled); in can_combine_jobs()
627 return dma_fence_get(&job->base.s_fence->scheduled); in get_last_queued_job_scheduled_fence()
/linux-6.15/drivers/gpu/drm/v3d/
H A Dv3d_sched.c229 if (unlikely(job->base.base.s_fence->finished.error)) { in v3d_bin_job_run()
288 if (unlikely(job->base.base.s_fence->finished.error)) { in v3d_render_job_run()
336 if (unlikely(job->base.base.s_fence->finished.error)) { in v3d_tfu_job_run()
384 if (unlikely(job->base.base.s_fence->finished.error)) { in v3d_csd_job_run()
/linux-6.15/include/drm/
H A Dgpu_scheduler.h353 struct drm_sched_fence *s_fence; member

12