Re: [PATCHSET cgroup/for-3.16] cgroup: implement unified hierarchy, v2

From: Li Zefan
Date: Mon Apr 14 2014 - 22:25:04 EST


> This patchset finally implements the default unified hierarchy. The
> goal is providing enough flexibility while enforcing stricter common
> structure where appropriate to address the above listed issues.
>
> Controllers which aren't bound to other hierarchies are
> automatically attached to the unified hierarchy, which is different in
> that controllers are enabled explicitly for each subtree.
> "cgroup.subtree_control" controls which controllers are enabled on the
> child cgroups. Let's assume a hierarchy like the following.
>
> root - A - B - C
> \ D
>
> root's "cgroup.subtree_control" determines which controllers are
> enabled on A. A's on B. B's on C and D. This coincides with the
> fact that controllers on the immediate sub-level are used to
> distribute the resources of the parent. In fact, it's natural to
> assume that resource control knobs of a child belong to its parent.
> Enabling a controller in "cgroup.subtree_control" declares that
> distribution of the respective resources of the cgroup will be
> controlled. Note that this means that controller enable states are
> shared among siblings.
>
> The default hierarchy has an extra restriction - only cgroups which
> don't contain any task may have controllers enabled in
> "cgroup.subtree_control". Combined with the other properties of the
> default hierarchy, this guarantees that, from the view point of
> controllers, tasks are only on the leaf cgroups. In other words, only
> leaf csses may contain tasks. This rules out situations where child
> cgroups compete against internal tasks of the parent.
>

Right after bootup:

# mount -t cgroup -o __DEVEL__sane_behavior xxx /mnt
# ls /mnt
cgroup.controllers cgroup.procs cgroup.sane_behavior cgroup.subtree_control
# cat /mnt/cgroup.controllers
cpuset cpu cpuacct memory devices freezer net_cls blkio perf_event hugetlb

I don't see any controller knobs...

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/