[PATCHSET] perf, cgroup: implement hierarchy support for perf_event controller

Tejun Heo tj at kernel.org
Tue Apr 9 02:23:30 UTC 2013


perf_event cgroup controller is one of the remaining few with broken
hierarchy support.  It turns out it's pretty easy to implement - the
only thing necessary is making perf_cgroup_match() return %true also
when the cgroup of the current task is a descendant of the event's
cgroup.  This patchset implements cgroup_is_descendant() and uses it
to implement hierarchy support in perf_event controller.

This patchset contains the following three patches.

 0001-cgroup-make-sure-parent-won-t-be-destroyed-before-it.patch
 0002-cgroup-implement-cgroup_is_descendant.patch
 0003-perf-make-perf_event-cgroup-hierarchical.patch

The patches are also available in the following git branch, which is
based on top of cgroup/for-3.10.  It's currently based on top of
cgroup/for-3.10 as the first patch causes non-trivial conflict with it
otherwise, which is not difficult to resolve but still nice to avoid
anyway.

Li, Michal, I picked the first two patches from Li's memcg patchset.
Can we push the first two through cgroup/for-3.10 and put the rest in
-mm?

Ingo, how should these be routed?

 git://git.kernel.org/pub/scm/linux/kernel/git/tj/cgroup.git perf_event-hierarchy-support

diffstat follows, thanks.

 include/linux/cgroup.h |    1 +
 kernel/cgroup.c        |   30 ++++++++++++++++++++++++++++++
 kernel/events/core.c   |   24 ++++++++++++++++--------
 3 files changed, 47 insertions(+), 8 deletions(-)

--
tejun


More information about the Containers mailing list