Lines Matching refs:sched_job
58 #define to_drm_sched_job(sched_job) \ argument
59 container_of((sched_job), struct drm_sched_job, queue_node)
484 struct drm_sched_job *sched_job = to_drm_sched_job( in drm_sched_entity_pop_job() local
487 if (!sched_job) in drm_sched_entity_pop_job()
490 while ((entity->dependency = sched->ops->dependency(sched_job, entity))) in drm_sched_entity_pop_job()
496 dma_fence_set_error(&sched_job->s_fence->finished, -ECANCELED); in drm_sched_entity_pop_job()
499 entity->last_scheduled = dma_fence_get(&sched_job->s_fence->finished); in drm_sched_entity_pop_job()
502 return sched_job; in drm_sched_entity_pop_job()
517 void drm_sched_entity_push_job(struct drm_sched_job *sched_job, in drm_sched_entity_push_job() argument
520 struct drm_gpu_scheduler *sched = sched_job->sched; in drm_sched_entity_push_job()
523 trace_drm_sched_job(sched_job, entity); in drm_sched_entity_push_job()
526 first = spsc_queue_push(&entity->job_queue, &sched_job->queue_node); in drm_sched_entity_push_job()
858 struct drm_sched_job *sched_job; in drm_sched_main() local
869 sched_job = drm_sched_entity_pop_job(entity); in drm_sched_main()
870 if (!sched_job) in drm_sched_main()
873 s_fence = sched_job->s_fence; in drm_sched_main()
876 drm_sched_job_begin(sched_job); in drm_sched_main()
878 fence = sched->ops->run_job(sched_job); in drm_sched_main()