]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
sched_ext: fix flag check for deferred callbacks
authorEmil Tsalapatis <etsal@meta.com>
Thu, 16 Oct 2025 18:11:26 +0000 (11:11 -0700)
committerTejun Heo <tj@kernel.org>
Thu, 16 Oct 2025 18:34:00 +0000 (08:34 -1000)
When scheduling the deferred balance callbacks, check SCX_RQ_BAL_CB_PENDING
instead of SCX_RQ_BAL_PENDING. This way schedule_deferred() properly tests
whether there is already a pending request for queue_balance_callback() to
be invoked at the end of .balance().

Fixes: a8ad873113d3 ("sched_ext: defer queue_balance_callback() until after ops.dispatch")
Signed-off-by: Emil Tsalapatis <emil@etsalapatis.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
kernel/sched/ext.c

index 12c9c3595692649f2d6e2566e2d6895e4f214d21..ecb251e883eab336f15a093354a04495ea256426 100644 (file)
@@ -792,7 +792,7 @@ static void schedule_deferred(struct rq *rq)
                return;
 
        /* Don't do anything if there already is a deferred operation. */
-       if (rq->scx.flags & SCX_RQ_BAL_PENDING)
+       if (rq->scx.flags & SCX_RQ_BAL_CB_PENDING)
                return;
 
        /*