Messages in this thread | | | Date | Mon, 4 May 2015 12:39:39 +0800 | From | Zefan Li <> | Subject | Re: [PATCH] sched: Relax a restriction in sched_rt_can_attach() |
| |
On 2015/5/4 11:13, Mike Galbraith wrote: > On Mon, 2015-05-04 at 08:54 +0800, Zefan Li wrote: >> It's allowed to promote a task from normal to realtime after it has been >> attached to a non-root cgroup, but it will fail if the attaching happens >> after it has become realtime. I don't see how this restriction is useful. > > In the CONFIG_RT_GROUP_SCHED case, promotion will fail is there is no > bandwidth allocated. >
Right. I forgot to mention this patch affects !CONFIG_RT_GROUP_SCHED only, though it should be obvious by reading the change.
>> We are moving toward unified hierarchy where all the cgroup controllers >> are bound together, so it would make cgroups easier to use if we have less >> restrictions on attaching tasks between cgroups. > > Forcing group scheduling overhead on users if they want cpuset or memory > cgroup functionality would be far from wonderful. Am I interpreting the > implications of this unification/binding properly? > > (I hope not, surely the plan is not to utterly _destroy_ cgroup utility) >
Some degree of flexibility is provided so that you may disable some controllers in a subtree. For example:
root ---> child1 (cpuset,memory,cpu) (cpuset,memory) \ \-> child2 (cpu)
| |