Re: [RFC] cgroup TODOs

From: Vivek Goyal
Date: Fri Sep 14 2012 - 14:08:45 EST

On Thu, Sep 13, 2012 at 01:58:27PM -0700, Tejun Heo wrote:

> 6. Multiple hierarchies
> Apart from the apparent wheeeeeeeeness of it (I think I talked about
> that enough the last time[1]), there's a basic problem when more
> than one controllers interact - it's impossible to define a resource
> group when more than two controllers are involved because the
> intersection of different controllers is only defined in terms of
> tasks.
> IOW, if an entity X is of interest to two controllers, there's no
> way to map X to the cgroups of the two controllers. X may belong to
> A and B when viewed by one task but A' and B when viewed by another.
> This already is a head scratcher in writeback where blkcg and memcg
> have to interact.
> While I am pushing for unified hierarchy, I think it's necessary to
> have different levels of granularities depending on controllers
> given that nesting involves significant overhead and noticeable
> controller-dependent behavior changes.
> Solution:
> I think a unified hierarchy with the ability to ignore subtrees
> depending on controllers should work. For example, let's assume the
> following hierarchy.
> R
> / \
> A B
> / \
> All controllers are co-mounted. There is per-cgroup knob which
> controls which controllers nest beyond it. If blkio doesn't want to
> distinguish AA and AB, the user can specify that blkio doesn't nest
> beyond A and blkio would see the tree as,
> R
> / \
> A B
> While other controllers keep seeing the original tree. The exact
> form of interface, I don't know yet. It could be a single file
> which the user echoes [-]controller name into it or per-controller
> boolean file.
> I think this level of flexibility should be enough for most use
> cases. If someone disagrees, please voice your objections now.

Hi Tejun,

I am curious that why are you planning to provide capability of controller
specific view of hierarchy. To me it sounds pretty close to having
separate hierarchies per controller. Just that it is a little more
restricted configuration.

IOW, who is is the user of this functionality and who is asking for it.
Can we go all out where all controllers have only one hierarchy view.

To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at
Please read the FAQ at