Hi! I have tried to use the new remote cgroup feature and I find the interface unfriendly - requiring cpuset.cpus.exclusive to be a subset of cpuset.cpus requires the program, which wants to isolate a CPU for some RT activity, to know what CPUs all ancestor cgroups want to use. For example consider cgroup hierarchy c1/c2/c3 where my program is running and wants to isolate CPU N, so - It creates new c1/c2/c3/rt cgroup - It adds N to cpuset.cpus.exclusive of rt, c3 and c2 cgroup (cpuset.cpus.exclusive |= N) - Now it should do the same with cpuset.cpus, but that's not possible if ancestors cpuset.cpus is empty, which is common configuration and there is no good way how to set it in that case. My proposal is to - Not require cpuset.cpus.exclusive to be a subset of cpuset.cpus - Create remote cgroup if cpuset.cpus is empty and local cgroup if it's set, to give the user explicit control on what cgroup is created. I have prepared change to test my idea (the next mail). I haven't tested it thoroughly yet, but I wanted to open the discussion on this topic to know if such a change could be accepted and I should burn more time on it. BR, Petr