diff options
author | Andrea Righi <arighi@nvidia.com> | 2025-07-01 08:08:45 +0200 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2025-07-03 06:44:13 -1000 |
commit | 7980ad7e4ca80f6c255f4473fba82a475342035a (patch) | |
tree | d1ba97b3d1c8a364727a663aaa624512390a967e | |
parent | 33796b91871ad4010c8188372dd1faf97cf0f1c0 (diff) |
selftests/sched_ext: Fix exit selftest hang on UP
On single-CPU systems, ops.select_cpu() is never called, causing the
EXIT_SELECT_CPU test case to wait indefinitely.
Avoid the stall by skipping this specific sub-test when only one CPU is
available.
Reported-by: Phil Auld <pauld@redhat.com>
Fixes: a5db7817af780 ("sched_ext: Add selftests")
Signed-off-by: Andrea Righi <arighi@nvidia.com>
Reviewed-by: Phil Auld <pauld@redhat.com>
Tested-by: Phil Auld <pauld@redhat.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
-rw-r--r-- | tools/testing/selftests/sched_ext/exit.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/tools/testing/selftests/sched_ext/exit.c b/tools/testing/selftests/sched_ext/exit.c index 9451782689de..ee25824b1cbe 100644 --- a/tools/testing/selftests/sched_ext/exit.c +++ b/tools/testing/selftests/sched_ext/exit.c @@ -22,6 +22,14 @@ static enum scx_test_status run(void *ctx) struct bpf_link *link; char buf[16]; + /* + * On single-CPU systems, ops.select_cpu() is never + * invoked, so skip this test to avoid getting stuck + * indefinitely. + */ + if (tc == EXIT_SELECT_CPU && libbpf_num_possible_cpus() == 1) + continue; + skel = exit__open(); SCX_ENUM_INIT(skel); skel->rodata->exit_point = tc; |