Re: [PATCHSET cgroup/for-3.17] cgroup, blkcg, memcg: make blkcg depend on memcg on unified hierarchy

From: Johannes Weiner
Date: Mon Jul 07 2014 - 14:33:56 EST


On Fri, Jun 27, 2014 at 09:03:06PM -0400, Tejun Heo wrote:
> Hello, guys.
>
> Currently, the blkio subsystem attributes all of writeback IOs to the
> root. One of the issues is that there's no way to tell who originated
> a writeback IO from block layer. Those IOs are usually issued
> asynchronously from a task which didn't have anything to do with
> actually generating the dirty pages. The memory subsystem, when
> enabled, already keeps track of the ownership of each dirty page and
> it's desirable for blkio to piggyback instead of adding its own
> per-page tag.
>
> This can be achieved on the unified hierarchy without too much
> difficulty. This patchset implements a dependency mechanism in the
> cgroup such that a subsystem can depends on other subsystems. If
> available, the depended-upon subsystems are enabled together
> implicitly when the subsystem is turned on. Implicitly enabled
> subsystems are invisible and the dependencies are transparent to
> userland.
>
> This patchset implements the dependency mechanism in cgroup core and
> make blkcg depend on memcg. This doesn't actually solve the writeback
> problem yet but is an important step.
>
> This patchset contains the following six patches.
>
> 0001-cgroup-reorganize-cgroup_subtree_control_write.patch
> 0002-cgroup-introduce-cgroup-subtree_control.patch
> 0003-cgroup-make-interface-files-visible-iff-enabled-on-c.patch
> 0004-cgroup-implement-cgroup_subsys-css_reset.patch
> 0005-cgroup-implement-cgroup_subsys-depends_on.patch
> 0006-blkcg-memcg-make-blkcg-depend-on-memcg-on-the-defaul.patch

These look good to me.

Acked-by: Johannes Weiner <hannes@xxxxxxxxxxx>

We can update memcg's ->css_reset() as we re-populate the interface in
the default hierarchy.
--
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/