mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2025-01-25 07:14:36 +08:00
drm/sched: Move free worker re-queuing out of the if block
Whether or not there are more jobs to clean up does not depend on the existance of the current job, given both drm_sched_get_finished_job and drm_sched_free_job_queue_if_done take and drop the job list lock. Therefore it is confusing to make it read like there is a dependency. Signed-off-by: Tvrtko Ursulin <tvrtko.ursulin@intel.com> Cc: Luben Tuikov <ltuikov89@gmail.com> Cc: Matthew Brost <matthew.brost@intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20231102105538.391648-3-tvrtko.ursulin@linux.intel.com Reviewed-by: Luben Tuikov <ltuikov89@gmail.com> Signed-off-by: Luben Tuikov <ltuikov89@gmail.com>
This commit is contained in:
parent
7abbbe2694
commit
e608d9f7ac
@ -1065,12 +1065,11 @@ static void drm_sched_free_job_work(struct work_struct *w)
|
||||
return;
|
||||
|
||||
job = drm_sched_get_finished_job(sched);
|
||||
if (job) {
|
||||
if (job)
|
||||
sched->ops->free_job(job);
|
||||
|
||||
drm_sched_free_job_queue_if_done(sched);
|
||||
drm_sched_run_job_queue_if_ready(sched);
|
||||
}
|
||||
drm_sched_free_job_queue_if_done(sched);
|
||||
drm_sched_run_job_queue_if_ready(sched);
|
||||
}
|
||||
|
||||
/**
|
||||
|
Loading…
Reference in New Issue
Block a user