Home
last modified time | relevance | path

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

12

/linux/drivers/gpu/drm/scheduler/
H A Dsched_main.c370 struct drm_sched_fence *s_fence = s_job->s_fence; in drm_sched_job_done() local
371 struct drm_gpu_scheduler *sched = s_fence->sched; in drm_sched_job_done()
376 trace_drm_sched_job_done(s_fence); in drm_sched_job_done()
378 dma_fence_get(&s_fence->finished); in drm_sched_job_done()
379 drm_sched_fence_finished(s_fence, result); in drm_sched_job_done()
380 dma_fence_put(&s_fence->finished); in drm_sched_job_done()
629 if (s_job->s_fence->parent && in drm_sched_stop()
630 dma_fence_remove_callback(s_job->s_fence->parent, in drm_sched_stop()
632 dma_fence_put(s_job->s_fence->parent); in drm_sched_stop()
633 s_job->s_fence->parent = NULL; in drm_sched_stop()
[all …]
H A Dsched_entity.c187 struct drm_sched_fence *s_fence = to_drm_sched_fence(f); in drm_sched_entity_kill_jobs_work() local
189 if (s_fence && f == &s_fence->scheduled) { in drm_sched_entity_kill_jobs_work()
195 f = dma_fence_get_rcu(&s_fence->finished); in drm_sched_entity_kill_jobs_work()
201 dma_fence_put(&s_fence->scheduled); in drm_sched_entity_kill_jobs_work()
212 drm_sched_fence_scheduled(job->s_fence, NULL); in drm_sched_entity_kill_jobs_work()
213 drm_sched_fence_finished(job->s_fence, -ESRCH); in drm_sched_entity_kill_jobs_work()
214 WARN_ON(job->s_fence->parent); in drm_sched_entity_kill_jobs_work()
252 struct drm_sched_fence *s_fence = job->s_fence; in drm_sched_entity_kill() local
254 dma_fence_get(&s_fence->finished); in drm_sched_entity_kill()
266 prev = &s_fence->finished; in drm_sched_entity_kill()
[all …]
/linux/drivers/gpu/drm/amd/amdgpu/
H A Damdgpu_job.c117 amdgpu_ring_soft_recovery(ring, job->vmid, s_job->s_fence->parent)) { in amdgpu_job_timedout()
157 if (dma_fence_get_status(&s_job->s_fence->finished) == 0) in amdgpu_job_timedout()
158 dma_fence_set_error(&s_job->s_fence->finished, -ETIME); in amdgpu_job_timedout()
292 if (job->base.s_fence && job->base.s_fence->finished.ops) in amdgpu_job_free_resources()
293 f = &job->base.s_fence->finished; in amdgpu_job_free_resources()
326 struct dma_fence *fence = &leader->base.s_fence->scheduled; in amdgpu_job_set_gang_leader()
346 if (job->gang_submit != &job->base.s_fence->scheduled) in amdgpu_job_free()
366 f = dma_fence_get(&job->base.s_fence->finished); in amdgpu_job_submit()
423 dma_fence_set_error(&job->base.s_fence->finished, r); in amdgpu_job_prepare_job()
436 finished = &job->base.s_fence->finished; in amdgpu_job_run()
[all …]
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_cs.c439 struct drm_sched_fence *s_fence; in amdgpu_cs_p2_dependencies() local
442 s_fence = to_drm_sched_fence(fence); in amdgpu_cs_p2_dependencies()
443 fence = dma_fence_get(&s_fence->scheduled); in amdgpu_cs_p2_dependencies()
1244 struct drm_sched_fence *s_fence = to_drm_sched_fence(fence); in amdgpu_cs_sync_rings() local
1252 if (!s_fence || s_fence->sched != sched) { in amdgpu_cs_sync_rings()
1304 fence = &p->jobs[i]->base.s_fence->scheduled; in amdgpu_cs_submit()
1339 p->fence = dma_fence_get(&leader->base.s_fence->finished); in amdgpu_cs_submit()
1350 &p->jobs[i]->base.s_fence->finished, in amdgpu_cs_submit()
H A Damdgpu_ids.c291 r = amdgpu_sync_fence(&(*id)->active, &job->base.s_fence->finished, in amdgpu_vmid_grab_reserved()
351 &job->base.s_fence->finished, in amdgpu_vmid_grab_used()
404 &job->base.s_fence->finished, in amdgpu_vmid_grab()
H A Damdgpu_ib.c151 fence_ctx = job->base.s_fence ? in amdgpu_ib_schedule()
152 job->base.s_fence->finished.context : 0; in amdgpu_ib_schedule()
H A Damdgpu_vm.c810 ring->funcs->emit_cleaner_shader && job->base.s_fence && in amdgpu_vm_flush()
811 &job->base.s_fence->scheduled == isolation->spearhead; in amdgpu_vm_flush()
/linux/drivers/gpu/drm/xe/
H A Dxe_tlb_inval_job.c277 dma_fence_get(&job->dep.drm.s_fence->finished); in xe_tlb_inval_job_push()
282 &job->dep.drm.s_fence->finished, in xe_tlb_inval_job_push()
293 return &job->dep.drm.s_fence->finished; in xe_tlb_inval_job_push()
H A Dxe_exec.c325 drm_gpuvm_resv_add_fence(&vm->gpuvm, exec, &job->drm.s_fence->finished, in xe_exec_ioctl()
330 xe_sync_entry_signal(&syncs[i], &job->drm.s_fence->finished); in xe_exec_ioctl()
335 xe_exec_queue_last_fence_set(q, vm, &job->drm.s_fence->finished); in xe_exec_ioctl()
H A Dxe_migrate.c1014 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_migrate_copy()
1375 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_migrate_vram_copy_chunk()
1613 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_migrate_clear()
1932 fence = dma_fence_get(&job->drm.s_fence->finished); in __xe_migrate_update_pgtables()
2218 fence = dma_fence_get(&job->drm.s_fence->finished); in xe_migrate_vram()
H A Dxe_gt.c185 fence = dma_fence_get(&job->drm.s_fence->finished); in emit_job_sync()
/linux/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/drivers/gpu/drm/etnaviv/
H A Detnaviv_sched.c26 if (likely(!sched_job->s_fence->finished.error)) in etnaviv_sched_run_job()
121 submit->out_fence = dma_fence_get(&submit->sched_job.s_fence->finished); in etnaviv_sched_push_job()
/linux/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()
1135 return &job->base.s_fence->finished; in pvr_queue_job_arm()
1150 if (job->base.s_fence) in pvr_queue_job_cleanup()
1170 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/drivers/accel/ethosu/
H A Dethosu_job.c135 job->inference_done_fence = dma_fence_get(&job->base.s_fence->finished); in ethosu_job_push()
190 if (unlikely(job->base.s_fence->finished.error)) in ethosu_job_run()
/linux/drivers/accel/rocket/
H A Drocket_job.c205 job->inference_done_fence = dma_fence_get(&job->base.s_fence->finished); in rocket_job_push()
295 if (unlikely(job->base.s_fence->finished.error)) in rocket_job_run()
/linux/drivers/gpu/drm/msm/
H A Dmsm_gem_submit.c97 if (submit->base.s_fence) in __msm_gem_submit_destroy()
742 submit->user_fence = dma_fence_get(&submit->base.s_fence->finished); in msm_ioctl_gem_submit()
/linux/drivers/gpu/drm/panfrost/
H A Dpanfrost_job.c327 job->render_done_fence = dma_fence_get(&job->base.s_fence->finished); in panfrost_job_push()
407 if (unlikely(job->base.s_fence->finished.error)) in panfrost_job_run()
/linux/drivers/gpu/drm/nouveau/
H A Dnouveau_sched.c312 job->done_fence = dma_fence_get(&job->base.s_fence->finished); in nouveau_job_submit()
/linux/drivers/gpu/drm/panthor/
H A Dpanthor_mmu.c2343 if (job->base.s_fence) in panthor_vm_bind_job_release()
2679 &sched_job->s_fence->finished, in panthor_vm_bind_job_update_resvs()
H A Dpanthor_sched.c2738 job->base.s_fence->parent = dma_fence_get(job->done_fence); in queue_start()
3916 if (job->base.s_fence) in job_release()
4046 panthor_vm_update_resvs(job->group->vm, exec, &sched_job->s_fence->finished, in panthor_job_update_resvs()
/linux/drivers/accel/amdxdna/
H A Daie2_ctx.c1022 job->out_fence = dma_fence_get(&job->base.s_fence->finished); in aie2_cmd_submit()

12