[GIT PULL] cgroup: Fixes for v7.0-rc6

From: Tejun Heo

Date: Tue Mar 31 2026 - 15:50:01 EST


Hello,

The following changes since commit a72f73c4dd9b209c53cf8b03b6e97fcefad4262c:

cgroup: Don't expose dead tasks in cgroup (2026-03-06 12:43:25 -1000)

are available in the Git repository at:

https://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git tags/cgroup-for-7.0-rc6-fixes

for you to fetch changes up to 089f3fcd690c71cb3d8ca09f34027764e28920a0:

cgroup/cpuset: Skip security check for hotplug induced v1 task migration (2026-03-31 09:14:13 -1000)

----------------------------------------------------------------
cgroup: Fixes for v7.0-rc6

- Fix cgroup rmdir racing with dying tasks. Deferred task cgroup unlink
introduced a window where cgroup.procs is empty but the cgroup is still
populated, causing rmdir to fail with -EBUSY and selftest failures. Make
rmdir wait for dying tasks to fully leave and fix selftests to not depend
on synchronous populated updates.

- Fix cpuset v1 task migration failure from empty cpusets under strict
security policies. When CPU hotplug removes the last CPU from a v1
cpuset, tasks must be migrated to an ancestor without a
security_task_setscheduler() check that would block the migration.

----------------------------------------------------------------
Tejun Heo (3):
cgroup: Wait for dying tasks to leave on rmdir
selftests/cgroup: Don't require synchronous populated update on task exit
cgroup: Fix cgroup_drain_dying() testing the wrong condition

Waiman Long (2):
cgroup/cpuset: Simplify setsched decision check in task iteration loop of cpuset_can_attach()
cgroup/cpuset: Skip security check for hotplug induced v1 task migration

include/linux/cgroup-defs.h | 3 +
kernel/cgroup/cgroup.c | 88 +++++++++++++++++++++-
kernel/cgroup/cpuset.c | 29 ++++---
tools/testing/selftests/cgroup/lib/cgroup_util.c | 15 ++++
.../selftests/cgroup/lib/include/cgroup_util.h | 2 +
tools/testing/selftests/cgroup/test_core.c | 3 +-
tools/testing/selftests/cgroup/test_kill.c | 7 +-
7 files changed, 131 insertions(+), 16 deletions(-)

--
tejun