[PATCH] drm/sched: revert "Always increment correct scheduler score"
Tvrtko Ursulin
tursulin at ursulin.net
Mon Sep 30 13:28:01 UTC 2024
On 30/09/2024 14:14, Christian König wrote:
> This reverts commit 087913e0ba2b3b9d7ccbafb2acf5dab9e35ae1d5.
>
> It turned out that the original code was correct since the rq can only
> change when there is no armed job for an entity.
>
> This change here broke the logic since we only incremented the counter
> for the first job, so revert it.
>
> Signed-off-by: Christian König <christian.koenig at amd.com>
> ---
> drivers/gpu/drm/scheduler/sched_entity.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/scheduler/sched_entity.c b/drivers/gpu/drm/scheduler/sched_entity.c
> index b2cf3e0c1838..a75eede8bf8d 100644
> --- a/drivers/gpu/drm/scheduler/sched_entity.c
> +++ b/drivers/gpu/drm/scheduler/sched_entity.c
> @@ -586,6 +586,7 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
> ktime_t submit_ts;
>
> trace_drm_sched_job(sched_job, entity);
> + atomic_inc(entity->rq->sched->score);
> WRITE_ONCE(entity->last_user, current->group_leader);
>
> /*
> @@ -613,7 +614,6 @@ void drm_sched_entity_push_job(struct drm_sched_job *sched_job)
> rq = entity->rq;
> sched = rq->sched;
>
> - atomic_inc(sched->score);
> drm_sched_rq_add_entity(rq, entity);
> spin_unlock(&entity->rq_lock);
>
This was definitely broken so revert is the right thing, thank you.
Acked-by: Tvrtko Ursulin <tvrtko.ursulin at igalia.com>
Regards,
Tvrtko
More information about the dri-devel
mailing list