Searched refs:s_job (Results 1 – 5 of 5) sorted by relevance
/linux-6.1.9/drivers/gpu/drm/scheduler/ |
D | sched_main.c | 172 static void drm_sched_job_done(struct drm_sched_job *s_job) in drm_sched_job_done() argument 174 struct drm_sched_fence *s_fence = s_job->s_fence; in drm_sched_job_done() 195 struct drm_sched_job *s_job = container_of(cb, struct drm_sched_job, cb); in drm_sched_job_done_cb() local 197 drm_sched_job_done(s_job); in drm_sched_job_done_cb() 305 static void drm_sched_job_begin(struct drm_sched_job *s_job) in drm_sched_job_begin() argument 307 struct drm_gpu_scheduler *sched = s_job->sched; in drm_sched_job_begin() 310 list_add_tail(&s_job->list, &sched->pending_list); in drm_sched_job_begin() 393 struct drm_sched_job *s_job, *tmp; in drm_sched_stop() local 417 list_for_each_entry_safe_reverse(s_job, tmp, &sched->pending_list, in drm_sched_stop() 419 if (s_job->s_fence->parent && in drm_sched_stop() [all …]
|
/linux-6.1.9/drivers/gpu/drm/amd/amdgpu/ |
D | amdgpu_job.c | 34 static enum drm_gpu_sched_stat amdgpu_job_timedout(struct drm_sched_job *s_job) in amdgpu_job_timedout() argument 36 struct amdgpu_ring *ring = to_amdgpu_ring(s_job->sched); in amdgpu_job_timedout() 37 struct amdgpu_job *job = to_amdgpu_job(s_job); in amdgpu_job_timedout() 45 __func__, s_job->sched->name); in amdgpu_job_timedout() 55 amdgpu_ring_soft_recovery(ring, job->vmid, s_job->s_fence->parent)) { in amdgpu_job_timedout() 57 s_job->sched->name); in amdgpu_job_timedout() 169 static void amdgpu_job_free_cb(struct drm_sched_job *s_job) in amdgpu_job_free_cb() argument 171 struct amdgpu_job *job = to_amdgpu_job(s_job); in amdgpu_job_free_cb() 173 drm_sched_job_cleanup(s_job); in amdgpu_job_free_cb() 324 struct drm_sched_job *s_job; in amdgpu_job_stop_all_jobs_on_sched() local [all …]
|
D | amdgpu_debugfs.c | 1667 struct drm_sched_job *s_job; in amdgpu_ib_preempt_job_recovery() local 1671 list_for_each_entry(s_job, &sched->pending_list, list) { in amdgpu_ib_preempt_job_recovery() 1672 fence = sched->ops->run_job(s_job); in amdgpu_ib_preempt_job_recovery() 1681 struct drm_sched_job *s_job, *tmp; in amdgpu_ib_preempt_mark_partial_job() local 1703 list_for_each_entry_safe(s_job, tmp, &sched->pending_list, list) { in amdgpu_ib_preempt_mark_partial_job() 1704 if (dma_fence_is_signaled(&s_job->s_fence->finished)) { in amdgpu_ib_preempt_mark_partial_job() 1706 list_del_init(&s_job->list); in amdgpu_ib_preempt_mark_partial_job() 1707 sched->ops->free_job(s_job); in amdgpu_ib_preempt_mark_partial_job() 1710 job = to_amdgpu_job(s_job); in amdgpu_ib_preempt_mark_partial_job()
|
D | amdgpu_device.c | 5105 struct drm_sched_job *s_job; in amdgpu_device_recheck_guilty_jobs() local 5110 s_job = list_first_entry_or_null(&ring->sched.pending_list, in amdgpu_device_recheck_guilty_jobs() 5112 if (s_job == NULL) in amdgpu_device_recheck_guilty_jobs() 5116 drm_sched_reset_karma(s_job); in amdgpu_device_recheck_guilty_jobs() 5119 if (!s_job->s_fence->parent) { in amdgpu_device_recheck_guilty_jobs() 5124 ret = dma_fence_wait_timeout(s_job->s_fence->parent, false, ring->sched.timeout); in amdgpu_device_recheck_guilty_jobs() 5127 ring->sched.name, s_job->id); in amdgpu_device_recheck_guilty_jobs() 5140 dma_fence_put(s_job->s_fence->parent); in amdgpu_device_recheck_guilty_jobs() 5141 s_job->s_fence->parent = NULL; in amdgpu_device_recheck_guilty_jobs() 5144 drm_sched_increase_karma(s_job); in amdgpu_device_recheck_guilty_jobs() [all …]
|
/linux-6.1.9/include/drm/ |
D | gpu_scheduler.h | 328 static inline bool drm_sched_invalidate_job(struct drm_sched_job *s_job, in drm_sched_invalidate_job() argument 331 return s_job && atomic_inc_return(&s_job->karma) > threshold; in drm_sched_invalidate_job() 508 void drm_sched_job_kickout(struct drm_sched_job *s_job);
|