Lines Matching refs:sched_job
33 #define to_drm_sched_job(sched_job) \ argument
34 container_of((sched_job), struct drm_sched_job, queue_node)
408 struct drm_sched_job *sched_job; in drm_sched_entity_pop_job() local
410 sched_job = to_drm_sched_job(spsc_queue_peek(&entity->job_queue)); in drm_sched_entity_pop_job()
411 if (!sched_job) in drm_sched_entity_pop_job()
415 drm_sched_job_dependency(sched_job, entity))) { in drm_sched_entity_pop_job()
416 trace_drm_sched_job_wait_dep(sched_job, entity->dependency); in drm_sched_entity_pop_job()
424 dma_fence_set_error(&sched_job->s_fence->finished, -ECANCELED); in drm_sched_entity_pop_job()
428 entity->last_scheduled = dma_fence_get(&sched_job->s_fence->finished); in drm_sched_entity_pop_job()
451 return sched_job; in drm_sched_entity_pop_job()
506 void drm_sched_entity_push_job(struct drm_sched_job *sched_job) in drm_sched_entity_push_job() argument
508 struct drm_sched_entity *entity = sched_job->entity; in drm_sched_entity_push_job()
511 trace_drm_sched_job(sched_job, entity); in drm_sched_entity_push_job()
514 first = spsc_queue_push(&entity->job_queue, &sched_job->queue_node); in drm_sched_entity_push_job()
515 sched_job->submit_ts = ktime_get(); in drm_sched_entity_push_job()
532 drm_sched_rq_update_fifo(entity, sched_job->submit_ts); in drm_sched_entity_push_job()