diff options
author | 2025-06-18 14:25:50 -0700 | |
---|---|---|
committer | 2025-06-18 14:25:50 -0700 | |
commit | 74b4cc9b8780bfe8a3992c9ac0033bf22ac01f19 (patch) | |
tree | fecf2afaabf6be34900cc99480dca048714ae3fe | |
parent | Merge tag 'wq-for-6.16-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/wq (diff) | |
parent | cgroup,freezer: fix incomplete freezing when attaching tasks (diff) | |
download | wireguard-linux-74b4cc9b8780bfe8a3992c9ac0033bf22ac01f19.tar.xz wireguard-linux-74b4cc9b8780bfe8a3992c9ac0033bf22ac01f19.zip |
Merge tag 'cgroup-for-6.16-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup
Pull cgroup fix from Tejun Heo:
- In cgroup1 freezer, a task migrating into a frozen cgroup might not
get frozen immediately due to the wrong operation order. Fix it.
* tag 'cgroup-for-6.16-rc2-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup:
cgroup,freezer: fix incomplete freezing when attaching tasks
-rw-r--r-- | kernel/cgroup/legacy_freezer.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/kernel/cgroup/legacy_freezer.c b/kernel/cgroup/legacy_freezer.c index 039d1eb2f215..507b8f19a262 100644 --- a/kernel/cgroup/legacy_freezer.c +++ b/kernel/cgroup/legacy_freezer.c @@ -188,13 +188,12 @@ static void freezer_attach(struct cgroup_taskset *tset) if (!(freezer->state & CGROUP_FREEZING)) { __thaw_task(task); } else { - freeze_task(task); - /* clear FROZEN and propagate upwards */ while (freezer && (freezer->state & CGROUP_FROZEN)) { freezer->state &= ~CGROUP_FROZEN; freezer = parent_freezer(freezer); } + freeze_task(task); } } |