Messages in this thread | | | Date | Sun, 12 Jun 2022 23:02:38 -0400 | Subject | Re: [PATCH v11 7/8] cgroup/cpuset: Update description of cpuset.cpus.partition in cgroup-v2.rst | From | Waiman Long <> |
| |
On 6/12/22 13:49, Tejun Heo wrote: > Hello, > > On Tue, May 10, 2022 at 11:34:12AM -0400, Waiman Long wrote: >> + External events like hotplug or changes to "cpuset.cpus" can >> + cause a valid partition root to become invalid and vice versa. >> + Note that a task cannot be moved to a cgroup with empty >> + "cpuset.cpus.effective". >> + >> + For a valid partition root or an invalid partition root with >> + the exclusivity rule enabled, changes made to "cpuset.cpus" >> + that violate the exclusivity rule will not be allowed. > My memory is failing but this is the same thing that we were discussing > before, right? The point was that the different behaviors re. system events > and config actions seemed unncessary and IIRC Michal was of the same opinion > (please correct me if I'm misremembering).
That is the behavior enforced by setting the CPU_EXCLUSIVE bit in cgroup v1. I haven't explicitly change it to make it different in cgroup v2. The major reason is that I don't want change to one cpuset to affect a sibling partition as it may make the code more complicate to validate if a partition is valid.
> >> + A valid non-root parent partition may distribute out all its CPUs >> + to its child partitions when there is no task associated with it. > I'm probably forgetting something. Was this necessary because of threaded > cgroup support because otherwise the above condition is superflous?
The top cpuset cannot have empty cpus.effective whereas the non-root partition roots can. Maybe I should reword it to make it more clear.
Thanks, Longman
| |