On Sat, Jul 23, 2022 at 04:28:28AM -1000, Tejun Heo wrote: > This makes the hotter paths - fork and exit - slower as they're always > forced into the slow path. There is no reason to force this on everyone > especially given that more common static usage pattern can now completely > avoid write-locking the rwsem. Write-locking is elided when turning on and > off controllers on empty sub-trees and CLONE_INTO_CGROUP enables seeding a > cgroup without grabbing the rwsem. Just a practical note that CLONE_INTO_CGROUP may not be so widespread yet [1][2]. But generally, the change makes sense to me. > + CGRP_ROOT_FAVOR_DYNMODS = (1 << 4), > + > + /* > * Enable cpuset controller in v1 cgroup to use v2 behavior. > */ > - CGRP_ROOT_CPUSET_V2_MODE = (1 << 4), > + CGRP_ROOT_CPUSET_V2_MODE = (1 << 16), > > /* > * Enable legacy local memory.events. > */ > - CGRP_ROOT_MEMORY_LOCAL_EVENTS = (1 << 5), > + CGRP_ROOT_MEMORY_LOCAL_EVENTS = (1 << 17), > > /* > * Enable recursive subtree protection > */ > - CGRP_ROOT_MEMORY_RECURSIVE_PROT = (1 << 6), > + CGRP_ROOT_MEMORY_RECURSIVE_PROT = (1 << 18), Why this new gap in flag bits? [1] https://github.com/systemd/systemd/pull/16706 [2] https://github.com/search?q=org%3Aopencontainers+CLONE_INTO_CGROUP&type=all (empty)