Lines Matching full:job
81 * struct drm_sched_entity - A wrapper around a job queue (typically
178 * The dependency fence of the job which is on the top of the job queue.
199 * Points to the finished fence of the last scheduled job. Only written
206 * @last_user: last group leader pushing a job into the entity.
230 * Marks earliest job waiting in SW queue
265 * struct drm_sched_fence - fences corresponding to the scheduling of a job.
270 * when the job is scheduled.
276 * when the job is completed.
278 * When setting up an out fence for the job, you should use
294 * when scheduling the job on hardware. We signal the
299 * @sched: the scheduler instance to which the job having this struct
308 * @owner: job owner for debugging
316 * struct drm_sched_job - A job to be run by an entity.
319 * @list: a job participates in a "pending" and "done" lists.
320 * @sched: the scheduler instance on which this job is scheduled.
321 * @s_fence: contains the fences for the scheduling of job.
323 * @credits: the number of credits this job contributes to the scheduler
324 * @work: Helper to reschdeule job kill to different context.
325 * @id: a unique id assigned to each job scheduled on the scheduler.
326 * @karma: increment on every hang caused by this job. If this exceeds the hang
327 * limit of the scheduler then the job is marked guilty and will not
329 * @s_priority: the priority of the job.
330 * @entity: the entity to which this job belongs.
333 * A job is created by the driver using drm_sched_job_init(), and
335 * to schedule the job.
362 * Contains the dependencies as struct dma_fence for this job, see
374 * When the job was pushed into the entity queue.
401 * Called when the scheduler is considering scheduling this job next, to
402 * get another struct dma_fence for this job to block on. Once it
412 * @run_job: Called to execute the job once all of the dependencies
420 * @timedout_job: Called when a job has taken too long to execute,
464 * @free_job: Called once the job's finished fence has been signaled
471 * job for execution.
473 * This callback returns the number of credits the job would take if
475 * the job's credit count. For instance, deduct the number of credits
489 * @timeout: the time after which a job is removed from the scheduler.
497 * @job_id_count: used to assign unique id to the each job.
504 * @pending_list: the list of jobs which are currently in the job queue.
506 * @hang_limit: once the hangs by a job crosses this limit then it is marked
511 * @free_guilty: A hit to time out handler to free the guilty job.
553 int drm_sched_job_init(struct drm_sched_job *job,
556 void drm_sched_job_arm(struct drm_sched_job *job);
557 int drm_sched_job_add_dependency(struct drm_sched_job *job,
559 int drm_sched_job_add_syncobj_dependency(struct drm_sched_job *job,
563 int drm_sched_job_add_resv_dependencies(struct drm_sched_job *job,
566 int drm_sched_job_add_implicit_dependencies(struct drm_sched_job *job,
576 void drm_sched_job_cleanup(struct drm_sched_job *job);