The following changes since commit ff0ce721ec213499ec5a532041fb3a1db2dc5ecb: cgroup/cpuset: Eliminate unncessary sched domains rebuilds in hotplug (2024-08-05 10:54:25 -1000) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git/ tags/cgroup-for-6.12 for you to fetch changes up to af000ce85293b8e608f696f0c6c280bc3a75887f: cgroup: Do not report unavailable v1 controllers in /proc/cgroups (2024-09-10 10:04:28 -1000) ---------------------------------------------------------------- cgroup: Changes for v6.12 - cpuset isolation improvements. - cpuset cgroup1 support is split into its own file behind the new config option CONFIG_CPUSET_V1. This makes it the second controller which makes cgroup1 support optional after memcg. - Handling of unavailable v1 controller handling improved during cgroup1 mount operations. - union_find applied to cpuset. It makes code simpler and more efficient. - Reduce spurious events in pids.events. - Cleanups and other misc changes. - Contains a merge of cgroup/for-6.11-fixes to receive cpuset fixes that further changes build upon. ---------------------------------------------------------------- Chen Ridong (18): cgroup/cpuset: remove child_ecpus_count cgroup/cpuset: add decrease attach_in_progress helpers cgroup: update some statememt about delegation cgroup/cpuset: Correct invalid remote parition prs cgroup/cpuset: remove fetch_xcpus cgroup/cpuset: remove use_parent_ecpus of cpuset cgroup/cpuset: introduce cpuset-v1.c cgroup/cpuset: move common code to cpuset-internal.h cgroup/cpuset: move memory_pressure to cpuset-v1.c cgroup/cpuset: move relax_domain_level to cpuset-v1.c cgroup/cpuset: move memory_spread to cpuset-v1.c cgroup/cpuset: add callback_lock helper cgroup/cpuset: move legacy hotplug update to cpuset-v1.c cgroup/cpuset: move validate_change_legacy to cpuset-v1.c cgroup/cpuset: move v1 interfaces to cpuset-v1.c cgroup/cpuset: rename functions shared between v1 and v2 cgroup/cpuset: guard cpuset-v1 code under CONFIG_CPUSETS_V1 cgroup/cpuset: add sefltest for cpuset v1 Michal Koutný (3): cgroup/cpuset: Expose cpuset filesystem with cpuset v1 only cgroup: Disallow mounting v1 hierarchies without controller implementation cgroup: Do not report unavailable v1 controllers in /proc/cgroups Tejun Heo (1): Merge branch 'cgroup/for-6.11-fixes' into cgroup/for-6.12 Waiman Long (7): cgroup: Show # of subsystem CSSes in cgroup.stat cgroup/cpuset: Check for partition roots with overlapping CPUs selftest/cgroup: Add new test cases to test_cpuset_prs.sh cgroup: Fix incorrect WARN_ON_ONCE() in css_release_work_fn() cgroup/cpuset: Account for boot time isolated CPUs selftest/cgroup: Make test_cpuset_prs.sh deal with pre-isolated CPUs cgroup/cpuset: Move cpu.h include to cpuset-internal.h Xavier (3): Union-Find: add a new module in kernel library cpuset: use Union-Find to optimize the merging of cpumasks Documentation: Fix the compilation errors in union_find.rst Xiu Jianfeng (3): cgroup/pids: Avoid spurious event notification cgroup/cpuset: Remove cpuset_slab_spread_rotor cgroup/pids: Remove unreachable paths of pids_{can,cancel}_fork Documentation/admin-guide/cgroup-v2.rst | 22 +- Documentation/core-api/index.rst | 1 + Documentation/core-api/union_find.rst | 106 ++ .../translations/zh_CN/core-api/index.rst | 1 + .../translations/zh_CN/core-api/union_find.rst | 92 ++ MAINTAINERS | 12 + include/linux/cgroup-defs.h | 14 + include/linux/cpuset.h | 10 +- include/linux/sched.h | 1 - include/linux/union_find.h | 41 + init/Kconfig | 13 + kernel/cgroup/Makefile | 1 + kernel/cgroup/cgroup-v1.c | 17 +- kernel/cgroup/cgroup.c | 68 +- kernel/cgroup/cpuset-internal.h | 305 ++++++ kernel/cgroup/cpuset-v1.c | 562 ++++++++++ kernel/cgroup/cpuset.c | 1155 +++----------------- kernel/cgroup/pids.c | 32 +- kernel/fork.c | 1 - lib/Makefile | 2 +- lib/union_find.c | 49 + tools/testing/selftests/cgroup/test_cpuset_prs.sh | 56 +- .../selftests/cgroup/test_cpuset_v1_base.sh | 77 ++ 23 files changed, 1569 insertions(+), 1069 deletions(-) create mode 100644 Documentation/core-api/union_find.rst create mode 100644 Documentation/translations/zh_CN/core-api/union_find.rst create mode 100644 include/linux/union_find.h create mode 100644 kernel/cgroup/cpuset-internal.h create mode 100644 kernel/cgroup/cpuset-v1.c create mode 100644 lib/union_find.c create mode 100755 tools/testing/selftests/cgroup/test_cpuset_v1_base.sh -- tejun