Hello, Waiman. This looks great to me. I have only one small nit in terms of interface. Currently, cpuset.partition file uses -1, 0, 1; however, given that this is consistent with how cgroup.type behaves (something can be set but may be invalid), I wonder whether using a similar syntax would be more consistent. e.g. sth like cpuset.type which takes "normal" or "partition" and shows one of "normal", "partition" and "partition invalid". I'd be perfectly happy with that being a follow-up patch. Peter, does the patchset look good to you? It does everything we want it to in terms of sched domain partitioning and is compliant all cgroup2 conventions. If so, I'll apply the series to the cgroup devel branch. Thank you very much for the work and persistence! -- tejun