Hello, Waiman. Sorry about the delay. On Thu, Apr 19, 2018 at 09:47:03AM -0400, Waiman Long wrote: > With the addition of "cpuset.cpus.isolated", it makes sense to add the > restriction that load balancing can only be turned off if the CPUs in > the isolated cpuset are subset of "cpuset.cpus.isolated". > > Signed-off-by: Waiman Long <longman@xxxxxxxxxx> > --- > Documentation/cgroup-v2.txt | 7 ++++--- > kernel/cgroup/cpuset.c | 29 ++++++++++++++++++++++++++--- > 2 files changed, 30 insertions(+), 6 deletions(-) > > diff --git a/Documentation/cgroup-v2.txt b/Documentation/cgroup-v2.txt > index 8d89dc2..c4227ee 100644 > --- a/Documentation/cgroup-v2.txt > +++ b/Documentation/cgroup-v2.txt > @@ -1554,9 +1554,10 @@ Cpuset Interface Files > and will not be moved to other CPUs. > > This flag is hierarchical and is inherited by child cpusets. It > - can be turned off only when the CPUs in this cpuset aren't > - listed in the cpuset.cpus of other sibling cgroups, and all > - the child cpusets, if present, have this flag turned off. > + can be explicitly turned off only when it is a direct child of > + the root cgroup and the CPUs in this cpuset are subset of the > + root's "cpuset.cpus.isolated". Moreover, the CPUs cannot be > + listed in the "cpuset.cpus" of other sibling cgroups. It is a little bit convoluted that the isolation requires coordination among root's isolated file and the first-level children's cpus file and the flag. Maybe I'm missing something but can't we do something like the following? * Add isolated flag file, which can only be modified on empty (in terms of cpus) first level children. * Once isolated flag is set, CPUs can only be added to the cpus file iff they aren't being used by anyone else and automatically become isolated. The first level cpus file is owned by the root cgroup anyway, so there's no danger regarding delegation or whatever and the interface would be a lot simpler. Thanks. -- tejun -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html