]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
selftests/sched_ext: Fix dsq_move_to_local check
authorCheng-Yang Chou <yphbchou0911@gmail.com>
Mon, 1 Jun 2026 15:53:48 +0000 (23:53 +0800)
committerTejun Heo <tj@kernel.org>
Mon, 1 Jun 2026 17:17:30 +0000 (07:17 -1000)
scan_dsq_pool() checked == 0 against scx_bpf_dsq_move_to_local(),
which returns true on success. This inverted success and failure,
causing peek_dsq_dispatch() to double-dispatch on success and skip
the real_dsq fallback on failure.

Signed-off-by: Cheng-Yang Chou <yphbchou0911@gmail.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
tools/testing/selftests/sched_ext/peek_dsq.bpf.c

index 7f23fb17b1e0f9ac25a843aa852fbfa1cb6cf5df..9e802b52b29ebf33b80761f305aa601cc4fed6f5 100644 (file)
@@ -95,7 +95,7 @@ static int scan_dsq_pool(void)
                        record_peek_result(task->pid);
 
                        /* Try to move this task to local */
-                       if (!moved && scx_bpf_dsq_move_to_local(dsq_id, 0) == 0) {
+                       if (!moved && scx_bpf_dsq_move_to_local(dsq_id, 0)) {
                                moved = 1;
                                break;
                        }