]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
6.11-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 8 Oct 2024 10:27:59 +0000 (12:27 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 8 Oct 2024 10:27:59 +0000 (12:27 +0200)
added patches:
drm-sched-revert-always-increment-correct-scheduler-score.patch

queue-6.11/drm-sched-revert-always-increment-correct-scheduler-score.patch [new file with mode: 0644]
queue-6.11/series

diff --git a/queue-6.11/drm-sched-revert-always-increment-correct-scheduler-score.patch b/queue-6.11/drm-sched-revert-always-increment-correct-scheduler-score.patch
new file mode 100644 (file)
index 0000000..3678490
--- /dev/null
@@ -0,0 +1,46 @@
+From abf201f6ce14c4ceeccde5471bdf59614b83a3d8 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?Christian=20K=C3=B6nig?= <christian.koenig@amd.com>
+Date: Mon, 30 Sep 2024 15:07:49 +0200
+Subject: drm/sched: revert "Always increment correct scheduler score"
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+From: Christian König <christian.koenig@amd.com>
+
+commit abf201f6ce14c4ceeccde5471bdf59614b83a3d8 upstream.
+
+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@amd.com>
+Acked-by: Tvrtko Ursulin <tvrtko.ursulin@igalia.com>
+Link: https://patchwork.freedesktop.org/patch/msgid/20240930131451.536150-1-christian.koenig@amd.com
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ drivers/gpu/drm/scheduler/sched_entity.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- 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 dr
+       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 dr
+               rq = entity->rq;
+               sched = rq->sched;
+-              atomic_inc(sched->score);
+               drm_sched_rq_add_entity(rq, entity);
+               spin_unlock(&entity->rq_lock);
index 6c6b5bdbbfcda33850205abac4f548a0f8ec1558..bd75798fb678a5c82e45e66754d09751f206845a 100644 (file)
@@ -548,3 +548,4 @@ drm-xe-vm-move-xa_alloc-to-prevent-uaf.patch
 drm-rockchip-vop-enable-vop_feature_internal_rgb-on-rk3066.patch
 drm-xe-vram-fix-ccs-offset-calculation.patch
 revert-drm-amd-display-skip-recompute-dsc-params-if-no-stream-on-link.patch
+drm-sched-revert-always-increment-correct-scheduler-score.patch