On Tue, Dec 14, 2021 at 10:24:22PM -0500, Waiman Long <longman@xxxxxxxxxx> wrote: > AFAICS, there are code in cpuset.c that disallows the an non-child node to > hold tasks, but the check doesn't cover all the possible cases. > I remembered that I was able to create such a scenario without using > threaded domains. On the default hierarchy (with controller(s) enabled)? That sounds like a bug. > That is why I put in this conditional check. It has nothing to do with the > use of threaded domains. But threaded domains are important nevertheless. I think that a structure like app-cgroup cgroup.type=threaded domain cpuset.partition=root `- rt cgroup.type=threaded cpuset.partition=isolated `- normal cgroup.type=threaded is a valid use case. Therefore I would not disallow partitioning inside threaded subtrees (as suggested). Michal