On Thu, Apr 07, 2016 at 05:28:24AM -0400, Johannes Weiner wrote:
Hm? The root group can always contain tasks. It's not the only thing
the root is exempt from, it can't control any resources either:
it does in fact control resouces; the hierarchy directly affects the
proportional distribution of time.
sched_group_set_shares():
/*
* We can't change the weight of the root cgroup.
*/
if (!tg->se[0])
return -EINVAL;
The root has, per definition, no siblings, so setting a weight is
entirely pointless.
tg_set_cfs_bandwidth():
if (tg == &root_task_group)
return -EINVAL;
We have had patches to implement this, but have so far held off because
they add a bunch of cycles to some really hot paths and we'd rather not
do that. Its not impossible, or unthinkable to do this otherwise.