diff options
author | Roman Gushchin <guro@fb.com> | 2019-04-19 10:03:08 -0700 |
---|---|---|
committer | Tejun Heo <tj@kernel.org> | 2019-04-19 11:26:49 -0700 |
commit | 4c476d8cff48853645abc822154aaad208faebcc (patch) | |
tree | 6f548d87c31e12ea213db7af9236e0944ae4f7a4 /kernel/cgroup/cgroup.c | |
parent | 712e35178754bbb785d00d5fcf5abaf32699bf11 (diff) | |
download | lwn-4c476d8cff48853645abc822154aaad208faebcc.tar.gz lwn-4c476d8cff48853645abc822154aaad208faebcc.zip |
cgroup: add tracing points for cgroup v2 freezer
Add cgroup:cgroup_freeze and cgroup:cgroup_unfreeze events,
which are using the existing cgroup tracing infrastructure.
Add the cgroup_event event class, which is similar to the cgroup
class, but contains an additional integer field to store a new
value (the level field is dropped).
Also add two tracing events: cgroup_notify_populated and
cgroup_notify_frozen, which are raised in a generic way using
the TRACE_CGROUP_PATH() macro.
This allows to trace cgroup state transitions and is generally
helpful for debugging the cgroup freezer code.
Signed-off-by: Roman Gushchin <guro@fb.com>
Signed-off-by: Tejun Heo <tj@kernel.org>
Diffstat (limited to 'kernel/cgroup/cgroup.c')
-rw-r--r-- | kernel/cgroup/cgroup.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/kernel/cgroup/cgroup.c b/kernel/cgroup/cgroup.c index 6895464b54c6..57edcf398d71 100644 --- a/kernel/cgroup/cgroup.c +++ b/kernel/cgroup/cgroup.c @@ -816,6 +816,8 @@ static void cgroup_update_populated(struct cgroup *cgrp, bool populated) break; cgroup1_check_for_release(cgrp); + TRACE_CGROUP_PATH(notify_populated, cgrp, + cgroup_is_populated(cgrp)); cgroup_file_notify(&cgrp->events_file); child = cgrp; |