diff options
| author | 2026-04-24 14:31:36 -1000 | |
|---|---|---|
| committer | 2026-04-24 14:31:36 -1000 | |
| commit | d292aa00de1aea72961f94c0db43f6b5c72684c9 (patch) | |
| tree | 05cc41ddda26a0aeea1e3c6729d5a7851c9a32b8 /tools/perf/scripts/python/bin/stackcollapse-record | |
| parent | sched_ext: Pass held rq to SCX_CALL_OP() for core_sched_before (diff) | |
sched_ext: Make bypass LB cpumasks per-scheduler
scx_bypass_lb_{donee,resched}_cpumask were file-scope statics shared by all
scheduler instances. With CONFIG_EXT_SUB_SCHED, multiple sched instances
each arm their own bypass_lb_timer; concurrent bypass_lb_node() calls RMW
the global cpumasks with no lock, corrupting donee/resched decisions.
Move the cpumasks into struct scx_sched, allocate them alongside the timer
in scx_alloc_and_add_sched(), free them in scx_sched_free_rcu_work().
Fixes: 95d1df610cdc ("sched_ext: Implement load balancer for bypass mode")
Cc: stable@vger.kernel.org # v6.19+
Reported-by: Chris Mason <clm@meta.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Reviewed-by: Andrea Righi <arighi@nvidia.com>
Diffstat (limited to 'tools/perf/scripts/python/bin/stackcollapse-record')
0 files changed, 0 insertions, 0 deletions
