diff options
author | Tejun Heo <tj@kernel.org> | 2025-06-16 23:13:25 +0300 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2025-06-27 13:11:38 +0300 |
commit | 57ec0818698c7d587ebc204971387bdf9d3c9fa1 (patch) | |
tree | 6e95586c77ad09f10b8ea7a1aac454e624d6dcb9 /scripts/generate_rust_analyzer.py | |
parent | 6e7a2d38816d1c9dcb96c7aba6dc9634fd226411 (diff) | |
download | linux-57ec0818698c7d587ebc204971387bdf9d3c9fa1.tar.xz |
sched_ext, sched/core: Don't call scx_group_set_weight() prematurely from sched_create_group()
commit 33796b91871ad4010c8188372dd1faf97cf0f1c0 upstream.
During task_group creation, sched_create_group() calls
scx_group_set_weight() with CGROUP_WEIGHT_DFL to initialize the sched_ext
portion. This is premature and ends up calling ops.cgroup_set_weight() with
an incorrect @cgrp before ops.cgroup_init() is called.
sched_create_group() should just initialize SCX related fields in the new
task_group. Fix it by factoring out scx_tg_init() from sched_init() and
making sched_create_group() call that function instead of
scx_group_set_weight().
v2: Retain CONFIG_EXT_GROUP_SCHED ifdef in sched_init() as removing it leads
to build failures on !CONFIG_GROUP_SCHED configs.
Signed-off-by: Tejun Heo <tj@kernel.org>
Fixes: 819513666966 ("sched_ext: Add cgroup support")
Cc: stable@vger.kernel.org # v6.12+
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'scripts/generate_rust_analyzer.py')
0 files changed, 0 insertions, 0 deletions