diff options
| author | Guopeng Zhang <zhangguopeng@kylinos.cn> | 2026-05-09 13:20:30 +0300 |
|---|---|---|
| committer | Tejun Heo <tj@kernel.org> | 2026-05-11 11:14:49 +0300 |
| commit | 4a39eda5fdd867fc39f3c039714dd432cee00268 (patch) | |
| tree | abad73590142a7b161096c13dc9384de85c4003b /tools/lib/python/kdoc | |
| parent | 2a3d7256faf06d1a15bb5b07e851ac4e1680c26d (diff) | |
| download | linux-4a39eda5fdd867fc39f3c039714dd432cee00268.tar.xz | |
cgroup/cpuset: Reset DL migration state on can_attach() failure
cpuset_can_attach() accumulates temporary SCHED_DEADLINE migration
state in the destination cpuset while walking the taskset.
If a later task_can_attach() or security_task_setscheduler() check
fails, cgroup_migrate_execute() treats cpuset as the failing subsystem
and does not call cpuset_cancel_attach() for it. The partially
accumulated state is then left behind and can be consumed by a later
attach, corrupting cpuset DL task accounting and pending DL bandwidth
accounting.
Reset the pending DL migration state from the common error exit when
ret is non-zero. Successful can_attach() keeps the state for
cpuset_attach() or cpuset_cancel_attach().
Fixes: 2ef269ef1ac0 ("cgroup/cpuset: Free DL BW in case can_attach() fails")
Cc: stable@vger.kernel.org # v6.10+
Signed-off-by: Guopeng Zhang <zhangguopeng@kylinos.cn>
Signed-off-by: Tejun Heo <tj@kernel.org>
Reviewed-by: Chen Ridong <chenridong@huaweicloud.com>
Reviewed-by: Waiman Long <longman@redhat.com>
Diffstat (limited to 'tools/lib/python/kdoc')
0 files changed, 0 insertions, 0 deletions
