drm_sched_job
struct drm_sched_job *s_job;
struct drm_sched_job *s_job, *tmp;
struct drm_sched_job *s_job;
static void amdgpu_job_free_cb(struct drm_sched_job *s_job)
amdgpu_job_prepare_job(struct drm_sched_job *sched_job,
static struct dma_fence *amdgpu_job_run(struct drm_sched_job *sched_job)
static struct drm_sched_job *
return container_of(node, struct drm_sched_job, queue_node);
struct drm_sched_job *s_job;
static enum drm_gpu_sched_stat amdgpu_job_timedout(struct drm_sched_job *s_job)
struct drm_sched_job base;
struct dma_fence *(*prepare_job)(struct drm_sched_job *sched_job,
struct dma_fence *(*run_job)(struct drm_sched_job *sched_job);
enum drm_gpu_sched_stat (*timedout_job)(struct drm_sched_job *sched_job);
void (*free_job)(struct drm_sched_job *sched_job);
void (*cancel_job)(struct drm_sched_job *sched_job);
void drm_sched_stop(struct drm_gpu_scheduler *sched, struct drm_sched_job *bad);
int drm_sched_job_init(struct drm_sched_job *job,
void drm_sched_job_arm(struct drm_sched_job *job);
void drm_sched_entity_push_job(struct drm_sched_job *sched_job);
int drm_sched_job_add_dependency(struct drm_sched_job *job,
int drm_sched_job_add_syncobj_dependency(struct drm_sched_job *job,
int drm_sched_job_add_resv_dependencies(struct drm_sched_job *job,
int drm_sched_job_add_implicit_dependencies(struct drm_sched_job *job,
bool drm_sched_job_has_dependency(struct drm_sched_job *job,
void drm_sched_job_cleanup(struct drm_sched_job *job);
void drm_sched_increase_karma(struct drm_sched_job *bad);
static inline bool drm_sched_invalidate_job(struct drm_sched_job *s_job,
TP_PROTO(struct drm_sched_job *sched_job, struct dma_fence *fence),
TP_PROTO(struct drm_sched_job *sched_job, struct dma_fence *fence),
DECLARE_EVENT_CLASS(drm_sched_job,
TP_PROTO(struct drm_sched_job *sched_job, struct drm_sched_entity *entity),
DEFINE_EVENT(drm_sched_job, drm_sched_job_queue,
TP_PROTO(struct drm_sched_job *sched_job, struct drm_sched_entity *entity),
DEFINE_EVENT(drm_sched_job, drm_sched_job_run,
TP_PROTO(struct drm_sched_job *sched_job, struct drm_sched_entity *entity),
struct drm_sched_job *job = container_of(wrk, typeof(*job), work);
struct drm_sched_job *job = container_of(cb, struct drm_sched_job,
struct drm_sched_job *job;
struct drm_sched_job *sched_job)
drm_sched_job_dependency(struct drm_sched_job *job,
struct drm_sched_job *drm_sched_entity_pop_job(struct drm_sched_entity *entity)
struct drm_sched_job *sched_job;
struct drm_sched_job *next;
void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
struct drm_sched_job *drm_sched_entity_pop_job(struct drm_sched_entity *entity);
static inline struct drm_sched_job *
return container_of(node, struct drm_sched_job, queue_node);
static inline struct drm_sched_job *
return container_of(node, struct drm_sched_job, queue_node);
int drm_sched_job_add_implicit_dependencies(struct drm_sched_job *job,
bool drm_sched_job_has_dependency(struct drm_sched_job *job,
void drm_sched_job_cleanup(struct drm_sched_job *job)
static struct drm_sched_job *
struct drm_sched_job *job, *next;
struct drm_sched_job, list);
struct drm_sched_job *s_job;
struct drm_sched_job *job;
struct drm_sched_job *sched_job;
struct drm_sched_job *job, *tmp;
void drm_sched_increase_karma(struct drm_sched_job *bad)
static void drm_sched_job_done(struct drm_sched_job *s_job, int result)
struct drm_sched_job *s_job = container_of(cb, struct drm_sched_job, cb);
static void drm_sched_job_begin(struct drm_sched_job *s_job)
struct drm_sched_job *job)
struct drm_sched_job *job;
struct drm_sched_job, list);
void drm_sched_stop(struct drm_gpu_scheduler *sched, struct drm_sched_job *bad)
struct drm_sched_job *s_job, *tmp;
struct drm_sched_job *s_job, *tmp;
struct drm_sched_job *s_job, *tmp;
int drm_sched_job_init(struct drm_sched_job *job,
void drm_sched_job_arm(struct drm_sched_job *job)
int drm_sched_job_add_dependency(struct drm_sched_job *job,
int drm_sched_job_add_syncobj_dependency(struct drm_sched_job *job,
int drm_sched_job_add_resv_dependencies(struct drm_sched_job *job,