Lines Matching refs:cgrp
66 int read_cgroup_id(struct cgroup *cgrp) in read_cgroup_id() argument
74 scnprintf(path, PATH_MAX, "%s/%s", mnt, cgrp->name); in read_cgroup_id()
76 cgrp->id = __read_cgroup_id(path); in read_cgroup_id()
108 if (!counter->cgrp) in evlist__find_cgroup()
110 if (!strcmp(counter->cgrp->name, str)) in evlist__find_cgroup()
111 return cgroup__get(counter->cgrp); in evlist__find_cgroup()
156 struct cgroup *cgrp = evlist__findnew_cgroup(evlist, str); in add_cgroup() local
159 if (!cgrp) in add_cgroup()
172 cgroup__put(cgrp); in add_cgroup()
175 counter->cgrp = cgrp; in add_cgroup()
187 void cgroup__put(struct cgroup *cgrp) in cgroup__put() argument
189 if (cgrp && refcount_dec_and_test(&cgrp->refcnt)) { in cgroup__put()
190 cgroup__delete(cgrp); in cgroup__put()
203 if (evsel->cgrp == NULL) in evsel__set_default_cgroup()
204 evsel->cgrp = cgroup__get(cgroup); in evsel__set_default_cgroup()
364 struct cgroup *cgrp = NULL; in parse_cgroups() local
400 cgrp = counter->cgrp; in parse_cgroups()
402 counter->cgrp = cgrp; in parse_cgroups()
403 refcount_inc(&cgrp->refcnt); in parse_cgroups()
422 struct cgroup *cgrp = NULL; in evlist__expand_cgroup() local
470 cgrp = cgroup__new(name, open_cgroup); in evlist__expand_cgroup()
471 if (cgrp == NULL) in evlist__expand_cgroup()
480 cgroup__put(evsel->cgrp); in evlist__expand_cgroup()
481 evsel->cgrp = cgroup__get(cgrp); in evlist__expand_cgroup()
490 cgroup__put(cgrp); in evlist__expand_cgroup()
494 if (metricgroup__copy_metric_events(tmp_list, cgrp, in evlist__expand_cgroup()
526 struct cgroup *cgrp; in __cgroup__findnew() local
530 cgrp = rb_entry(parent, struct cgroup, node); in __cgroup__findnew()
532 if (cgrp->id == id) in __cgroup__findnew()
533 return cgrp; in __cgroup__findnew()
535 if (cgrp->id < id) in __cgroup__findnew()
544 cgrp = malloc(sizeof(*cgrp)); in __cgroup__findnew()
545 if (cgrp == NULL) in __cgroup__findnew()
548 cgrp->name = strdup(path); in __cgroup__findnew()
549 if (cgrp->name == NULL) { in __cgroup__findnew()
550 free(cgrp); in __cgroup__findnew()
554 cgrp->fd = -1; in __cgroup__findnew()
555 cgrp->id = id; in __cgroup__findnew()
556 refcount_set(&cgrp->refcnt, 1); in __cgroup__findnew()
558 rb_link_node(&cgrp->node, parent, p); in __cgroup__findnew()
559 rb_insert_color(&cgrp->node, root); in __cgroup__findnew()
561 return cgrp; in __cgroup__findnew()
567 struct cgroup *cgrp; in cgroup__findnew() local
570 cgrp = __cgroup__findnew(&env->cgroups.tree, id, true, path); in cgroup__findnew()
572 return cgrp; in cgroup__findnew()
582 struct cgroup *cgrp; in cgroup__find() local
585 cgrp = __cgroup__findnew(&env->cgroups.tree, id, false, NULL); in cgroup__find()
587 return cgrp; in cgroup__find()
593 struct cgroup *cgrp; in perf_env__purge_cgroups() local
598 cgrp = rb_entry(node, struct cgroup, node); in perf_env__purge_cgroups()
601 cgroup__put(cgrp); in perf_env__purge_cgroups()