cgrp               13 drivers/gpu/drm/nouveau/nvkm/engine/fifo/changk104.h 	struct nvkm_fifo_cgrp *cgrp;
cgrp              185 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 	struct nvkm_fifo_cgrp *cgrp;
cgrp              197 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 	list_for_each_entry(cgrp, &fifo->runlist[runl].cgrp, head) {
cgrp              198 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 		func->cgrp(cgrp, mem, nr++ * func->size);
cgrp              199 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 		list_for_each_entry(chan, &cgrp->chan, head) {
cgrp              212 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 	struct nvkm_fifo_cgrp *cgrp = chan->cgrp;
cgrp              216 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 		if (cgrp && !--cgrp->chan_nr)
cgrp              217 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 			list_del_init(&cgrp->head);
cgrp              225 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 	struct nvkm_fifo_cgrp *cgrp = chan->cgrp;
cgrp              227 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 	if (cgrp) {
cgrp              228 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 		if (!cgrp->chan_nr++)
cgrp              229 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 			list_add_tail(&cgrp->head, &fifo->runlist[chan->runl].cgrp);
cgrp              230 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 		list_add_tail(&chan->head, &cgrp->chan);
cgrp              333 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 	struct nvkm_fifo_cgrp *cgrp;
cgrp              342 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 	list_for_each_entry(cgrp, &fifo->runlist[runl].cgrp, head) {
cgrp              343 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 		if (cgrp->id == chid) {
cgrp              344 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 			chan = list_first_entry(&cgrp->chan, typeof(*chan), head);
cgrp              346 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 			if (!--cgrp->chan_nr)
cgrp              347 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 				list_del_init(&cgrp->head);
cgrp              959 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c 		INIT_LIST_HEAD(&fifo->runlist[i].cgrp);
cgrp               35 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h 		struct list_head cgrp;
cgrp               68 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.h 		void (*cgrp)(struct nvkm_fifo_cgrp *,
cgrp               33 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.c gk110_fifo_runlist_cgrp(struct nvkm_fifo_cgrp *cgrp,
cgrp               36 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.c 	nvkm_wo32(memory, offset + 0, (cgrp->chan_nr << 26) | (128 << 18) |
cgrp               37 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.c 				      (3 << 14) | 0x00002000 | cgrp->id);
cgrp               44 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk110.c 	.cgrp = gk110_fifo_runlist_cgrp,
cgrp               43 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gm107.c 	.cgrp = gk110_fifo_runlist_cgrp,
cgrp               44 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 	struct nvkm_fifo_cgrp *cgrp = chan->cgrp;
cgrp               47 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 	if (cgrp)
cgrp               48 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 		nvkm_wr32(device, 0x002634, cgrp->id | 0x01000000);
cgrp               56 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 			   cgrp ? "tsg" : "channel",
cgrp               57 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 			   cgrp ? cgrp->id : chan->base.chid, client->name);
cgrp              226 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 	kfree(chan->cgrp);
cgrp              289 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 		if (!(chan->cgrp = kmalloc(sizeof(*chan->cgrp), GFP_KERNEL)))
cgrp              291 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 		chan->cgrp->id = chan->base.chid;
cgrp              292 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 		INIT_LIST_HEAD(&chan->cgrp->head);
cgrp              293 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 		INIT_LIST_HEAD(&chan->cgrp->chan);
cgrp              294 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogk104.c 		chan->cgrp->chan_nr = 0;
cgrp              169 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogv100.c 		if (!(chan->cgrp = kmalloc(sizeof(*chan->cgrp), GFP_KERNEL)))
cgrp              171 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogv100.c 		chan->cgrp->id = chan->base.chid;
cgrp              172 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogv100.c 		INIT_LIST_HEAD(&chan->cgrp->head);
cgrp              173 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogv100.c 		INIT_LIST_HEAD(&chan->cgrp->chan);
cgrp              174 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gpfifogv100.c 		chan->cgrp->chan_nr = 0;
cgrp               46 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gv100.c gv100_fifo_runlist_cgrp(struct nvkm_fifo_cgrp *cgrp,
cgrp               50 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gv100.c 	nvkm_wo32(memory, offset + 0x4, cgrp->chan_nr);
cgrp               51 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gv100.c 	nvkm_wo32(memory, offset + 0x8, cgrp->id);
cgrp               58 drivers/gpu/drm/nouveau/nvkm/engine/fifo/gv100.c 	.cgrp = gv100_fifo_runlist_cgrp,
cgrp               49 drivers/gpu/drm/nouveau/nvkm/engine/fifo/tu102.c 	.cgrp = gv100_fifo_runlist_cgrp,
cgrp               84 include/linux/bpf-cgroup.h int cgroup_bpf_inherit(struct cgroup *cgrp);
cgrp               85 include/linux/bpf-cgroup.h void cgroup_bpf_offline(struct cgroup *cgrp);
cgrp               87 include/linux/bpf-cgroup.h int __cgroup_bpf_attach(struct cgroup *cgrp, struct bpf_prog *prog,
cgrp               89 include/linux/bpf-cgroup.h int __cgroup_bpf_detach(struct cgroup *cgrp, struct bpf_prog *prog,
cgrp               91 include/linux/bpf-cgroup.h int __cgroup_bpf_query(struct cgroup *cgrp, const union bpf_attr *attr,
cgrp               95 include/linux/bpf-cgroup.h int cgroup_bpf_attach(struct cgroup *cgrp, struct bpf_prog *prog,
cgrp               97 include/linux/bpf-cgroup.h int cgroup_bpf_detach(struct cgroup *cgrp, struct bpf_prog *prog,
cgrp               99 include/linux/bpf-cgroup.h int cgroup_bpf_query(struct cgroup *cgrp, const union bpf_attr *attr,
cgrp              339 include/linux/bpf-cgroup.h static inline int cgroup_bpf_inherit(struct cgroup *cgrp) { return 0; }
cgrp              340 include/linux/bpf-cgroup.h static inline void cgroup_bpf_offline(struct cgroup *cgrp) {}
cgrp              509 include/linux/cgroup-defs.h 	struct cgroup cgrp;
cgrp              414 include/linux/cgroup.h static inline void cgroup_get(struct cgroup *cgrp)
cgrp              416 include/linux/cgroup.h 	css_get(&cgrp->self);
cgrp              419 include/linux/cgroup.h static inline bool cgroup_tryget(struct cgroup *cgrp)
cgrp              421 include/linux/cgroup.h 	return css_tryget(&cgrp->self);
cgrp              424 include/linux/cgroup.h static inline void cgroup_put(struct cgroup *cgrp)
cgrp              426 include/linux/cgroup.h 	css_put(&cgrp->self);
cgrp              547 include/linux/cgroup.h static inline struct cgroup *cgroup_parent(struct cgroup *cgrp)
cgrp              549 include/linux/cgroup.h 	struct cgroup_subsys_state *parent_css = cgrp->self.parent;
cgrp              565 include/linux/cgroup.h static inline bool cgroup_is_descendant(struct cgroup *cgrp,
cgrp              568 include/linux/cgroup.h 	if (cgrp->root != ancestor->root || cgrp->level < ancestor->level)
cgrp              570 include/linux/cgroup.h 	return cgrp->ancestor_ids[ancestor->level] == ancestor->id;
cgrp              584 include/linux/cgroup.h static inline struct cgroup *cgroup_ancestor(struct cgroup *cgrp,
cgrp              587 include/linux/cgroup.h 	if (cgrp->level < ancestor_level)
cgrp              589 include/linux/cgroup.h 	while (cgrp && cgrp->level > ancestor_level)
cgrp              590 include/linux/cgroup.h 		cgrp = cgroup_parent(cgrp);
cgrp              591 include/linux/cgroup.h 	return cgrp;
cgrp              612 include/linux/cgroup.h static inline bool cgroup_is_populated(struct cgroup *cgrp)
cgrp              614 include/linux/cgroup.h 	return cgrp->nr_populated_csets + cgrp->nr_populated_domain_children +
cgrp              615 include/linux/cgroup.h 		cgrp->nr_populated_threaded_children;
cgrp              619 include/linux/cgroup.h static inline ino_t cgroup_ino(struct cgroup *cgrp)
cgrp              621 include/linux/cgroup.h 	return cgrp->kn->id.ino;
cgrp              648 include/linux/cgroup.h static inline int cgroup_name(struct cgroup *cgrp, char *buf, size_t buflen)
cgrp              650 include/linux/cgroup.h 	return kernfs_name(cgrp->kn, buf, buflen);
cgrp              653 include/linux/cgroup.h static inline int cgroup_path(struct cgroup *cgrp, char *buf, size_t buflen)
cgrp              655 include/linux/cgroup.h 	return kernfs_path(cgrp->kn, buf, buflen);
cgrp              658 include/linux/cgroup.h static inline void pr_cont_cgroup_name(struct cgroup *cgrp)
cgrp              660 include/linux/cgroup.h 	pr_cont_kernfs_name(cgrp->kn);
cgrp              663 include/linux/cgroup.h static inline void pr_cont_cgroup_path(struct cgroup *cgrp)
cgrp              665 include/linux/cgroup.h 	pr_cont_kernfs_path(cgrp->kn);
cgrp              668 include/linux/cgroup.h static inline struct psi_group *cgroup_psi(struct cgroup *cgrp)
cgrp              670 include/linux/cgroup.h 	return &cgrp->psi;
cgrp              692 include/linux/cgroup.h static inline union kernfs_node_id *cgroup_get_kernfs_id(struct cgroup *cgrp)
cgrp              694 include/linux/cgroup.h 	return &cgrp->kn->id;
cgrp              723 include/linux/cgroup.h static inline union kernfs_node_id *cgroup_get_kernfs_id(struct cgroup *cgrp)
cgrp              728 include/linux/cgroup.h static inline struct cgroup *cgroup_parent(struct cgroup *cgrp)
cgrp              733 include/linux/cgroup.h static inline struct psi_group *cgroup_psi(struct cgroup *cgrp)
cgrp              752 include/linux/cgroup.h void cgroup_rstat_updated(struct cgroup *cgrp, int cpu);
cgrp              753 include/linux/cgroup.h void cgroup_rstat_flush(struct cgroup *cgrp);
cgrp              754 include/linux/cgroup.h void cgroup_rstat_flush_irqsafe(struct cgroup *cgrp);
cgrp              755 include/linux/cgroup.h void cgroup_rstat_flush_hold(struct cgroup *cgrp);
cgrp              770 include/linux/cgroup.h void __cgroup_account_cputime(struct cgroup *cgrp, u64 delta_exec);
cgrp              771 include/linux/cgroup.h void __cgroup_account_cputime_field(struct cgroup *cgrp,
cgrp              777 include/linux/cgroup.h 	struct cgroup *cgrp;
cgrp              782 include/linux/cgroup.h 	cgrp = task_dfl_cgroup(task);
cgrp              783 include/linux/cgroup.h 	if (cgroup_parent(cgrp))
cgrp              784 include/linux/cgroup.h 		__cgroup_account_cputime(cgrp, delta_exec);
cgrp              792 include/linux/cgroup.h 	struct cgroup *cgrp;
cgrp              797 include/linux/cgroup.h 	cgrp = task_dfl_cgroup(task);
cgrp              798 include/linux/cgroup.h 	if (cgroup_parent(cgrp))
cgrp              799 include/linux/cgroup.h 		__cgroup_account_cputime_field(cgrp, index, delta_exec);
cgrp              839 include/linux/cgroup.h 		return &cgrp_dfl_root.cgrp;
cgrp              841 include/linux/cgroup.h 	return (struct cgroup *)(unsigned long)v ?: &cgrp_dfl_root.cgrp;
cgrp              872 include/linux/cgroup.h int cgroup_path_ns(struct cgroup *cgrp, char *buf, size_t buflen,
cgrp              903 include/linux/cgroup.h void cgroup_update_frozen(struct cgroup *cgrp);
cgrp              904 include/linux/cgroup.h void cgroup_freeze(struct cgroup *cgrp, bool freeze);
cgrp              943 include/linux/cgroup.h static inline void cgroup_bpf_get(struct cgroup *cgrp)
cgrp              945 include/linux/cgroup.h 	percpu_ref_get(&cgrp->bpf.refcnt);
cgrp              948 include/linux/cgroup.h static inline void cgroup_bpf_put(struct cgroup *cgrp)
cgrp              950 include/linux/cgroup.h 	percpu_ref_put(&cgrp->bpf.refcnt);
cgrp              955 include/linux/cgroup.h static inline void cgroup_bpf_get(struct cgroup *cgrp) {}
cgrp              956 include/linux/cgroup.h static inline void cgroup_bpf_put(struct cgroup *cgrp) {}
cgrp              721 include/linux/perf_event.h 	struct perf_cgroup		*cgrp; /* cgroup event is attach to */
cgrp              817 include/linux/perf_event.h 	struct perf_cgroup		*cgrp;
cgrp               28 include/linux/psi.h int psi_cgroup_alloc(struct cgroup *cgrp);
cgrp               29 include/linux/psi.h void psi_cgroup_free(struct cgroup *cgrp);
cgrp               48 include/linux/psi.h static inline int psi_cgroup_alloc(struct cgroup *cgrp)
cgrp               52 include/linux/psi.h static inline void psi_cgroup_free(struct cgroup *cgrp)
cgrp               56 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path),
cgrp               58 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path),
cgrp               68 include/trace/events/cgroup.h 		__entry->root = cgrp->root->hierarchy_id;
cgrp               69 include/trace/events/cgroup.h 		__entry->id = cgrp->id;
cgrp               70 include/trace/events/cgroup.h 		__entry->level = cgrp->level;
cgrp               80 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path),
cgrp               82 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path)
cgrp               87 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path),
cgrp               89 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path)
cgrp               94 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path),
cgrp               96 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path)
cgrp              101 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path),
cgrp              103 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path)
cgrp              108 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path),
cgrp              110 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path)
cgrp              115 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path),
cgrp              117 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path)
cgrp              168 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path, int val),
cgrp              170 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path, val),
cgrp              181 include/trace/events/cgroup.h 		__entry->root = cgrp->root->hierarchy_id;
cgrp              182 include/trace/events/cgroup.h 		__entry->id = cgrp->id;
cgrp              183 include/trace/events/cgroup.h 		__entry->level = cgrp->level;
cgrp              195 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path, int val),
cgrp              197 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path, val)
cgrp              202 include/trace/events/cgroup.h 	TP_PROTO(struct cgroup *cgrp, const char *path, int val),
cgrp              204 include/trace/events/cgroup.h 	TP_ARGS(cgrp, path, val)
cgrp               25 kernel/bpf/cgroup.c void cgroup_bpf_offline(struct cgroup *cgrp)
cgrp               27 kernel/bpf/cgroup.c 	cgroup_get(cgrp);
cgrp               28 kernel/bpf/cgroup.c 	percpu_ref_kill(&cgrp->bpf.refcnt);
cgrp               38 kernel/bpf/cgroup.c 	struct cgroup *p, *cgrp = container_of(work, struct cgroup,
cgrp               46 kernel/bpf/cgroup.c 	for (type = 0; type < ARRAY_SIZE(cgrp->bpf.progs); type++) {
cgrp               47 kernel/bpf/cgroup.c 		struct list_head *progs = &cgrp->bpf.progs[type];
cgrp               61 kernel/bpf/cgroup.c 				cgrp->bpf.effective[type],
cgrp               68 kernel/bpf/cgroup.c 	for (p = cgroup_parent(cgrp); p; p = cgroup_parent(p))
cgrp               71 kernel/bpf/cgroup.c 	percpu_ref_exit(&cgrp->bpf.refcnt);
cgrp               72 kernel/bpf/cgroup.c 	cgroup_put(cgrp);
cgrp               82 kernel/bpf/cgroup.c 	struct cgroup *cgrp = container_of(ref, struct cgroup, bpf.refcnt);
cgrp               84 kernel/bpf/cgroup.c 	INIT_WORK(&cgrp->bpf.release_work, cgroup_bpf_release);
cgrp               85 kernel/bpf/cgroup.c 	queue_work(system_wq, &cgrp->bpf.release_work);
cgrp              108 kernel/bpf/cgroup.c static bool hierarchy_allows_attach(struct cgroup *cgrp,
cgrp              114 kernel/bpf/cgroup.c 	p = cgroup_parent(cgrp);
cgrp              138 kernel/bpf/cgroup.c static int compute_effective_progs(struct cgroup *cgrp,
cgrp              145 kernel/bpf/cgroup.c 	struct cgroup *p = cgrp;
cgrp              161 kernel/bpf/cgroup.c 	p = cgrp;
cgrp              182 kernel/bpf/cgroup.c static void activate_effective_progs(struct cgroup *cgrp,
cgrp              186 kernel/bpf/cgroup.c 	rcu_swap_protected(cgrp->bpf.effective[type], old_array,
cgrp              198 kernel/bpf/cgroup.c int cgroup_bpf_inherit(struct cgroup *cgrp)
cgrp              203 kernel/bpf/cgroup.c #define	NR ARRAY_SIZE(cgrp->bpf.effective)
cgrp              208 kernel/bpf/cgroup.c 	ret = percpu_ref_init(&cgrp->bpf.refcnt, cgroup_bpf_release_fn, 0,
cgrp              213 kernel/bpf/cgroup.c 	for (p = cgroup_parent(cgrp); p; p = cgroup_parent(p))
cgrp              217 kernel/bpf/cgroup.c 		INIT_LIST_HEAD(&cgrp->bpf.progs[i]);
cgrp              220 kernel/bpf/cgroup.c 		if (compute_effective_progs(cgrp, i, &arrays[i]))
cgrp              224 kernel/bpf/cgroup.c 		activate_effective_progs(cgrp, i, arrays[i]);
cgrp              231 kernel/bpf/cgroup.c 	for (p = cgroup_parent(cgrp); p; p = cgroup_parent(p))
cgrp              234 kernel/bpf/cgroup.c 	percpu_ref_exit(&cgrp->bpf.refcnt);
cgrp              239 kernel/bpf/cgroup.c static int update_effective_progs(struct cgroup *cgrp,
cgrp              246 kernel/bpf/cgroup.c 	css_for_each_descendant_pre(css, &cgrp->self) {
cgrp              258 kernel/bpf/cgroup.c 	css_for_each_descendant_pre(css, &cgrp->self) {
cgrp              279 kernel/bpf/cgroup.c 	css_for_each_descendant_pre(css, &cgrp->self) {
cgrp              301 kernel/bpf/cgroup.c int __cgroup_bpf_attach(struct cgroup *cgrp, struct bpf_prog *prog,
cgrp              304 kernel/bpf/cgroup.c 	struct list_head *progs = &cgrp->bpf.progs[type];
cgrp              317 kernel/bpf/cgroup.c 	if (!hierarchy_allows_attach(cgrp, type, flags))
cgrp              320 kernel/bpf/cgroup.c 	if (!list_empty(progs) && cgrp->bpf.flags[type] != flags)
cgrp              386 kernel/bpf/cgroup.c 	cgrp->bpf.flags[type] = flags;
cgrp              388 kernel/bpf/cgroup.c 	err = update_effective_progs(cgrp, type);
cgrp              403 kernel/bpf/cgroup.c 		bpf_cgroup_storage_link(storage[stype], cgrp, type);
cgrp              412 kernel/bpf/cgroup.c 		bpf_cgroup_storage_link(old_storage[stype], cgrp, type);
cgrp              430 kernel/bpf/cgroup.c int __cgroup_bpf_detach(struct cgroup *cgrp, struct bpf_prog *prog,
cgrp              433 kernel/bpf/cgroup.c 	struct list_head *progs = &cgrp->bpf.progs[type];
cgrp              435 kernel/bpf/cgroup.c 	u32 flags = cgrp->bpf.flags[type];
cgrp              475 kernel/bpf/cgroup.c 	err = update_effective_progs(cgrp, type);
cgrp              488 kernel/bpf/cgroup.c 		cgrp->bpf.flags[type] = 0;
cgrp              501 kernel/bpf/cgroup.c int __cgroup_bpf_query(struct cgroup *cgrp, const union bpf_attr *attr,
cgrp              506 kernel/bpf/cgroup.c 	struct list_head *progs = &cgrp->bpf.progs[type];
cgrp              507 kernel/bpf/cgroup.c 	u32 flags = cgrp->bpf.flags[type];
cgrp              511 kernel/bpf/cgroup.c 	effective = rcu_dereference_protected(cgrp->bpf.effective[type],
cgrp              552 kernel/bpf/cgroup.c 	struct cgroup *cgrp;
cgrp              555 kernel/bpf/cgroup.c 	cgrp = cgroup_get_from_fd(attr->target_fd);
cgrp              556 kernel/bpf/cgroup.c 	if (IS_ERR(cgrp))
cgrp              557 kernel/bpf/cgroup.c 		return PTR_ERR(cgrp);
cgrp              559 kernel/bpf/cgroup.c 	ret = cgroup_bpf_attach(cgrp, prog, attr->attach_type,
cgrp              561 kernel/bpf/cgroup.c 	cgroup_put(cgrp);
cgrp              568 kernel/bpf/cgroup.c 	struct cgroup *cgrp;
cgrp              571 kernel/bpf/cgroup.c 	cgrp = cgroup_get_from_fd(attr->target_fd);
cgrp              572 kernel/bpf/cgroup.c 	if (IS_ERR(cgrp))
cgrp              573 kernel/bpf/cgroup.c 		return PTR_ERR(cgrp);
cgrp              579 kernel/bpf/cgroup.c 	ret = cgroup_bpf_detach(cgrp, prog, attr->attach_type, 0);
cgrp              583 kernel/bpf/cgroup.c 	cgroup_put(cgrp);
cgrp              590 kernel/bpf/cgroup.c 	struct cgroup *cgrp;
cgrp              593 kernel/bpf/cgroup.c 	cgrp = cgroup_get_from_fd(attr->query.target_fd);
cgrp              594 kernel/bpf/cgroup.c 	if (IS_ERR(cgrp))
cgrp              595 kernel/bpf/cgroup.c 		return PTR_ERR(cgrp);
cgrp              597 kernel/bpf/cgroup.c 	ret = cgroup_bpf_query(cgrp, attr, uattr);
cgrp              599 kernel/bpf/cgroup.c 	cgroup_put(cgrp);
cgrp              633 kernel/bpf/cgroup.c 	struct cgroup *cgrp;
cgrp              642 kernel/bpf/cgroup.c 	cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data);
cgrp              652 kernel/bpf/cgroup.c 			cgrp->bpf.effective[type], skb, __bpf_prog_run_save_cb);
cgrp              654 kernel/bpf/cgroup.c 		ret = BPF_PROG_RUN_ARRAY(cgrp->bpf.effective[type], skb,
cgrp              682 kernel/bpf/cgroup.c 	struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data);
cgrp              685 kernel/bpf/cgroup.c 	ret = BPF_PROG_RUN_ARRAY(cgrp->bpf.effective[type], sk, BPF_PROG_RUN);
cgrp              714 kernel/bpf/cgroup.c 	struct cgroup *cgrp;
cgrp              728 kernel/bpf/cgroup.c 	cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data);
cgrp              729 kernel/bpf/cgroup.c 	ret = BPF_PROG_RUN_ARRAY(cgrp->bpf.effective[type], &ctx, BPF_PROG_RUN);
cgrp              755 kernel/bpf/cgroup.c 	struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data);
cgrp              758 kernel/bpf/cgroup.c 	ret = BPF_PROG_RUN_ARRAY(cgrp->bpf.effective[type], sock_ops,
cgrp              767 kernel/bpf/cgroup.c 	struct cgroup *cgrp;
cgrp              776 kernel/bpf/cgroup.c 	cgrp = task_dfl_cgroup(current);
cgrp              777 kernel/bpf/cgroup.c 	allow = BPF_PROG_RUN_ARRAY(cgrp->bpf.effective[type], &ctx,
cgrp              901 kernel/bpf/cgroup.c 	struct cgroup *cgrp;
cgrp              935 kernel/bpf/cgroup.c 	cgrp = task_dfl_cgroup(current);
cgrp              936 kernel/bpf/cgroup.c 	ret = BPF_PROG_RUN_ARRAY(cgrp->bpf.effective[type], &ctx, BPF_PROG_RUN);
cgrp              953 kernel/bpf/cgroup.c static bool __cgroup_bpf_prog_array_is_empty(struct cgroup *cgrp,
cgrp              960 kernel/bpf/cgroup.c 	prog_array = rcu_dereference(cgrp->bpf.effective[attach_type]);
cgrp              990 kernel/bpf/cgroup.c 	struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data);
cgrp             1003 kernel/bpf/cgroup.c 	    __cgroup_bpf_prog_array_is_empty(cgrp, BPF_CGROUP_SETSOCKOPT))
cgrp             1024 kernel/bpf/cgroup.c 	ret = BPF_PROG_RUN_ARRAY(cgrp->bpf.effective[BPF_CGROUP_SETSOCKOPT],
cgrp             1062 kernel/bpf/cgroup.c 	struct cgroup *cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data);
cgrp             1076 kernel/bpf/cgroup.c 	    __cgroup_bpf_prog_array_is_empty(cgrp, BPF_CGROUP_GETSOCKOPT))
cgrp             1108 kernel/bpf/cgroup.c 	ret = BPF_PROG_RUN_ARRAY(cgrp->bpf.effective[BPF_CGROUP_GETSOCKOPT],
cgrp              318 kernel/bpf/helpers.c 	struct cgroup *cgrp = task_dfl_cgroup(current);
cgrp              320 kernel/bpf/helpers.c 	return cgrp->kn->id.id;
cgrp               28 kernel/cgroup/cgroup-internal.h #define TRACE_CGROUP_PATH(type, cgrp, ...)				\
cgrp               34 kernel/cgroup/cgroup-internal.h 			cgroup_path(cgrp, trace_cgroup_path,		\
cgrp               36 kernel/cgroup/cgroup-internal.h 			trace_cgroup_##type(cgrp, trace_cgroup_path,	\
cgrp               78 kernel/cgroup/cgroup-internal.h 	struct cgroup		*cgrp;
cgrp              168 kernel/cgroup/cgroup-internal.h static inline bool cgroup_is_dead(const struct cgroup *cgrp)
cgrp              170 kernel/cgroup/cgroup-internal.h 	return !(cgrp->self.flags & CSS_ONLINE);
cgrp              173 kernel/cgroup/cgroup-internal.h static inline bool notify_on_release(const struct cgroup *cgrp)
cgrp              175 kernel/cgroup/cgroup-internal.h 	return test_bit(CGRP_NOTIFY_ON_RELEASE, &cgrp->flags);
cgrp              206 kernel/cgroup/cgroup-internal.h bool cgroup_on_dfl(const struct cgroup *cgrp);
cgrp              207 kernel/cgroup/cgroup-internal.h bool cgroup_is_thread_root(struct cgroup *cgrp);
cgrp              208 kernel/cgroup/cgroup-internal.h bool cgroup_is_threaded(struct cgroup *cgrp);
cgrp              215 kernel/cgroup/cgroup-internal.h int cgroup_path_ns_locked(struct cgroup *cgrp, char *buf, size_t buflen,
cgrp              239 kernel/cgroup/cgroup-internal.h void cgroup_lock_and_drain_offline(struct cgroup *cgrp);
cgrp              246 kernel/cgroup/cgroup-internal.h int __cgroup_task_count(const struct cgroup *cgrp);
cgrp              247 kernel/cgroup/cgroup-internal.h int cgroup_task_count(const struct cgroup *cgrp);
cgrp              252 kernel/cgroup/cgroup-internal.h int cgroup_rstat_init(struct cgroup *cgrp);
cgrp              253 kernel/cgroup/cgroup-internal.h void cgroup_rstat_exit(struct cgroup *cgrp);
cgrp              271 kernel/cgroup/cgroup-internal.h void cgroup1_pidlist_destroy_all(struct cgroup *cgrp);
cgrp              273 kernel/cgroup/cgroup-internal.h void cgroup1_check_for_release(struct cgroup *cgrp);
cgrp              200 kernel/cgroup/cgroup-v1.c void cgroup1_pidlist_destroy_all(struct cgroup *cgrp)
cgrp              204 kernel/cgroup/cgroup-v1.c 	mutex_lock(&cgrp->pidlist_mutex);
cgrp              205 kernel/cgroup/cgroup-v1.c 	list_for_each_entry_safe(l, tmp_l, &cgrp->pidlists, links)
cgrp              207 kernel/cgroup/cgroup-v1.c 	mutex_unlock(&cgrp->pidlist_mutex);
cgrp              210 kernel/cgroup/cgroup-v1.c 	BUG_ON(!list_empty(&cgrp->pidlists));
cgrp              281 kernel/cgroup/cgroup-v1.c static struct cgroup_pidlist *cgroup_pidlist_find(struct cgroup *cgrp,
cgrp              288 kernel/cgroup/cgroup-v1.c 	lockdep_assert_held(&cgrp->pidlist_mutex);
cgrp              290 kernel/cgroup/cgroup-v1.c 	list_for_each_entry(l, &cgrp->pidlists, links)
cgrp              302 kernel/cgroup/cgroup-v1.c static struct cgroup_pidlist *cgroup_pidlist_find_create(struct cgroup *cgrp,
cgrp              307 kernel/cgroup/cgroup-v1.c 	lockdep_assert_held(&cgrp->pidlist_mutex);
cgrp              309 kernel/cgroup/cgroup-v1.c 	l = cgroup_pidlist_find(cgrp, type);
cgrp              322 kernel/cgroup/cgroup-v1.c 	l->owner = cgrp;
cgrp              323 kernel/cgroup/cgroup-v1.c 	list_add(&l->links, &cgrp->pidlists);
cgrp              330 kernel/cgroup/cgroup-v1.c static int pidlist_array_load(struct cgroup *cgrp, enum cgroup_filetype type,
cgrp              340 kernel/cgroup/cgroup-v1.c 	lockdep_assert_held(&cgrp->pidlist_mutex);
cgrp              348 kernel/cgroup/cgroup-v1.c 	length = cgroup_task_count(cgrp);
cgrp              353 kernel/cgroup/cgroup-v1.c 	css_task_iter_start(&cgrp->self, 0, &it);
cgrp              372 kernel/cgroup/cgroup-v1.c 	l = cgroup_pidlist_find_create(cgrp, type);
cgrp              401 kernel/cgroup/cgroup-v1.c 	struct cgroup *cgrp = seq_css(s)->cgroup;
cgrp              407 kernel/cgroup/cgroup-v1.c 	mutex_lock(&cgrp->pidlist_mutex);
cgrp              416 kernel/cgroup/cgroup-v1.c 		of->priv = cgroup_pidlist_find(cgrp, type);
cgrp              423 kernel/cgroup/cgroup-v1.c 		ret = pidlist_array_load(cgrp, type,
cgrp              495 kernel/cgroup/cgroup-v1.c 	struct cgroup *cgrp;
cgrp              500 kernel/cgroup/cgroup-v1.c 	cgrp = cgroup_kn_lock_live(of->kn, false);
cgrp              501 kernel/cgroup/cgroup-v1.c 	if (!cgrp)
cgrp              523 kernel/cgroup/cgroup-v1.c 	ret = cgroup_attach_task(cgrp, task, threadgroup);
cgrp              548 kernel/cgroup/cgroup-v1.c 	struct cgroup *cgrp;
cgrp              550 kernel/cgroup/cgroup-v1.c 	BUILD_BUG_ON(sizeof(cgrp->root->release_agent_path) < PATH_MAX);
cgrp              552 kernel/cgroup/cgroup-v1.c 	cgrp = cgroup_kn_lock_live(of->kn, false);
cgrp              553 kernel/cgroup/cgroup-v1.c 	if (!cgrp)
cgrp              556 kernel/cgroup/cgroup-v1.c 	strlcpy(cgrp->root->release_agent_path, strstrip(buf),
cgrp              557 kernel/cgroup/cgroup-v1.c 		sizeof(cgrp->root->release_agent_path));
cgrp              565 kernel/cgroup/cgroup-v1.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp              568 kernel/cgroup/cgroup-v1.c 	seq_puts(seq, cgrp->root->release_agent_path);
cgrp              693 kernel/cgroup/cgroup-v1.c 	struct cgroup *cgrp;
cgrp              710 kernel/cgroup/cgroup-v1.c 	cgrp = rcu_dereference(*(void __rcu __force **)&kn->priv);
cgrp              711 kernel/cgroup/cgroup-v1.c 	if (!cgrp || cgroup_is_dead(cgrp)) {
cgrp              718 kernel/cgroup/cgroup-v1.c 	css_task_iter_start(&cgrp->self, 0, &it);
cgrp              745 kernel/cgroup/cgroup-v1.c void cgroup1_check_for_release(struct cgroup *cgrp)
cgrp              747 kernel/cgroup/cgroup-v1.c 	if (notify_on_release(cgrp) && !cgroup_is_populated(cgrp) &&
cgrp              748 kernel/cgroup/cgroup-v1.c 	    !css_has_online_children(&cgrp->self) && !cgroup_is_dead(cgrp))
cgrp              749 kernel/cgroup/cgroup-v1.c 		schedule_work(&cgrp->release_agent_work);
cgrp              777 kernel/cgroup/cgroup-v1.c 	struct cgroup *cgrp =
cgrp              786 kernel/cgroup/cgroup-v1.c 	agentbuf = kstrdup(cgrp->root->release_agent_path, GFP_KERNEL);
cgrp              791 kernel/cgroup/cgroup-v1.c 	ret = cgroup_path_ns_locked(cgrp, pathbuf, PATH_MAX, &init_cgroup_ns);
cgrp              821 kernel/cgroup/cgroup-v1.c 	struct cgroup *cgrp = kn->priv;
cgrp              841 kernel/cgroup/cgroup-v1.c 		TRACE_CGROUP_PATH(rename, cgrp);
cgrp              872 kernel/cgroup/cgroup-v1.c 	if (test_bit(CGRP_CPUSET_CLONE_CHILDREN, &root->cgrp.flags))
cgrp             1049 kernel/cgroup/cgroup-v1.c 	cgroup_lock_and_drain_offline(&cgrp_dfl_root.cgrp);
cgrp             1073 kernel/cgroup/cgroup-v1.c 	if (!list_empty(&root->cgrp.self.children)) {
cgrp             1137 kernel/cgroup/cgroup-v1.c 		if (!percpu_ref_tryget_live(&ss->root->cgrp.self.refcnt))
cgrp             1139 kernel/cgroup/cgroup-v1.c 		cgroup_put(&ss->root->cgrp);
cgrp             1211 kernel/cgroup/cgroup-v1.c 	cgroup_lock_and_drain_offline(&cgrp_dfl_root.cgrp);
cgrp             1214 kernel/cgroup/cgroup-v1.c 	if (!ret && !percpu_ref_tryget_live(&ctx->root->cgrp.self.refcnt))
cgrp             1222 kernel/cgroup/cgroup-v1.c 	if (!ret && percpu_ref_is_dying(&ctx->root->cgrp.self.refcnt)) {
cgrp              161 kernel/cgroup/cgroup.c struct cgroup_root cgrp_dfl_root = { .cgrp.rstat_cpu = &cgrp_dfl_root_rstat_cpu };
cgrp              216 kernel/cgroup/cgroup.c static int cgroup_apply_control(struct cgroup *cgrp);
cgrp              217 kernel/cgroup/cgroup.c static void cgroup_finalize_control(struct cgroup *cgrp, int ret);
cgrp              220 kernel/cgroup/cgroup.c static int cgroup_destroy_locked(struct cgroup *cgrp);
cgrp              221 kernel/cgroup/cgroup.c static struct cgroup_subsys_state *css_create(struct cgroup *cgrp,
cgrp              226 kernel/cgroup/cgroup.c 			      struct cgroup *cgrp, struct cftype cfts[],
cgrp              298 kernel/cgroup/cgroup.c bool cgroup_on_dfl(const struct cgroup *cgrp)
cgrp              300 kernel/cgroup/cgroup.c 	return cgrp->root == &cgrp_dfl_root;
cgrp              334 kernel/cgroup/cgroup.c static bool cgroup_has_tasks(struct cgroup *cgrp)
cgrp              336 kernel/cgroup/cgroup.c 	return cgrp->nr_populated_csets;
cgrp              339 kernel/cgroup/cgroup.c bool cgroup_is_threaded(struct cgroup *cgrp)
cgrp              341 kernel/cgroup/cgroup.c 	return cgrp->dom_cgrp != cgrp;
cgrp              345 kernel/cgroup/cgroup.c static bool cgroup_is_mixable(struct cgroup *cgrp)
cgrp              352 kernel/cgroup/cgroup.c 	return !cgroup_parent(cgrp);
cgrp              356 kernel/cgroup/cgroup.c static bool cgroup_can_be_thread_root(struct cgroup *cgrp)
cgrp              359 kernel/cgroup/cgroup.c 	if (cgroup_is_mixable(cgrp))
cgrp              363 kernel/cgroup/cgroup.c 	if (cgroup_is_threaded(cgrp))
cgrp              367 kernel/cgroup/cgroup.c 	if (cgrp->nr_populated_domain_children)
cgrp              371 kernel/cgroup/cgroup.c 	if (cgrp->subtree_control & ~cgrp_dfl_threaded_ss_mask)
cgrp              378 kernel/cgroup/cgroup.c bool cgroup_is_thread_root(struct cgroup *cgrp)
cgrp              381 kernel/cgroup/cgroup.c 	if (cgroup_is_threaded(cgrp))
cgrp              385 kernel/cgroup/cgroup.c 	if (cgrp->nr_threaded_children)
cgrp              392 kernel/cgroup/cgroup.c 	if (cgroup_has_tasks(cgrp) &&
cgrp              393 kernel/cgroup/cgroup.c 	    (cgrp->subtree_control & cgrp_dfl_threaded_ss_mask))
cgrp              400 kernel/cgroup/cgroup.c static bool cgroup_is_valid_domain(struct cgroup *cgrp)
cgrp              403 kernel/cgroup/cgroup.c 	if (cgroup_is_threaded(cgrp))
cgrp              407 kernel/cgroup/cgroup.c 	while ((cgrp = cgroup_parent(cgrp))) {
cgrp              408 kernel/cgroup/cgroup.c 		if (!cgroup_is_mixable(cgrp) && cgroup_is_thread_root(cgrp))
cgrp              410 kernel/cgroup/cgroup.c 		if (cgroup_is_threaded(cgrp))
cgrp              418 kernel/cgroup/cgroup.c static u16 cgroup_control(struct cgroup *cgrp)
cgrp              420 kernel/cgroup/cgroup.c 	struct cgroup *parent = cgroup_parent(cgrp);
cgrp              421 kernel/cgroup/cgroup.c 	u16 root_ss_mask = cgrp->root->subsys_mask;
cgrp              427 kernel/cgroup/cgroup.c 		if (cgroup_is_threaded(cgrp))
cgrp              432 kernel/cgroup/cgroup.c 	if (cgroup_on_dfl(cgrp))
cgrp              439 kernel/cgroup/cgroup.c static u16 cgroup_ss_mask(struct cgroup *cgrp)
cgrp              441 kernel/cgroup/cgroup.c 	struct cgroup *parent = cgroup_parent(cgrp);
cgrp              447 kernel/cgroup/cgroup.c 		if (cgroup_is_threaded(cgrp))
cgrp              452 kernel/cgroup/cgroup.c 	return cgrp->root->subsys_mask;
cgrp              466 kernel/cgroup/cgroup.c static struct cgroup_subsys_state *cgroup_css(struct cgroup *cgrp,
cgrp              470 kernel/cgroup/cgroup.c 		return rcu_dereference_check(cgrp->subsys[ss->id],
cgrp              473 kernel/cgroup/cgroup.c 		return &cgrp->self;
cgrp              484 kernel/cgroup/cgroup.c static struct cgroup_subsys_state *cgroup_tryget_css(struct cgroup *cgrp,
cgrp              490 kernel/cgroup/cgroup.c 	css = cgroup_css(cgrp, ss);
cgrp              508 kernel/cgroup/cgroup.c static struct cgroup_subsys_state *cgroup_e_css_by_mask(struct cgroup *cgrp,
cgrp              514 kernel/cgroup/cgroup.c 		return &cgrp->self;
cgrp              520 kernel/cgroup/cgroup.c 	while (!(cgroup_ss_mask(cgrp) & (1 << ss->id))) {
cgrp              521 kernel/cgroup/cgroup.c 		cgrp = cgroup_parent(cgrp);
cgrp              522 kernel/cgroup/cgroup.c 		if (!cgrp)
cgrp              526 kernel/cgroup/cgroup.c 	return cgroup_css(cgrp, ss);
cgrp              542 kernel/cgroup/cgroup.c struct cgroup_subsys_state *cgroup_e_css(struct cgroup *cgrp,
cgrp              548 kernel/cgroup/cgroup.c 		css = cgroup_css(cgrp, ss);
cgrp              552 kernel/cgroup/cgroup.c 		cgrp = cgroup_parent(cgrp);
cgrp              553 kernel/cgroup/cgroup.c 	} while (cgrp);
cgrp              569 kernel/cgroup/cgroup.c struct cgroup_subsys_state *cgroup_get_e_css(struct cgroup *cgrp,
cgrp              577 kernel/cgroup/cgroup.c 		css = cgroup_css(cgrp, ss);
cgrp              581 kernel/cgroup/cgroup.c 		cgrp = cgroup_parent(cgrp);
cgrp              582 kernel/cgroup/cgroup.c 	} while (cgrp);
cgrp              591 kernel/cgroup/cgroup.c static void cgroup_get_live(struct cgroup *cgrp)
cgrp              593 kernel/cgroup/cgroup.c 	WARN_ON_ONCE(cgroup_is_dead(cgrp));
cgrp              594 kernel/cgroup/cgroup.c 	css_get(&cgrp->self);
cgrp              602 kernel/cgroup/cgroup.c int __cgroup_task_count(const struct cgroup *cgrp)
cgrp              609 kernel/cgroup/cgroup.c 	list_for_each_entry(link, &cgrp->cset_links, cset_link)
cgrp              619 kernel/cgroup/cgroup.c int cgroup_task_count(const struct cgroup *cgrp)
cgrp              624 kernel/cgroup/cgroup.c 	count = __cgroup_task_count(cgrp);
cgrp              632 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = of->kn->parent->priv;
cgrp              644 kernel/cgroup/cgroup.c 		return rcu_dereference_raw(cgrp->subsys[cft->ss->id]);
cgrp              646 kernel/cgroup/cgroup.c 		return &cgrp->self;
cgrp              658 kernel/cgroup/cgroup.c #define for_each_css(css, ssid, cgrp)					\
cgrp              661 kernel/cgroup/cgroup.c 				(cgrp)->subsys[(ssid)],			\
cgrp              673 kernel/cgroup/cgroup.c #define for_each_e_css(css, ssid, cgrp)					    \
cgrp              675 kernel/cgroup/cgroup.c 		if (!((css) = cgroup_e_css_by_mask(cgrp,		    \
cgrp              705 kernel/cgroup/cgroup.c #define cgroup_for_each_live_child(child, cgrp)				\
cgrp              706 kernel/cgroup/cgroup.c 	list_for_each_entry((child), &(cgrp)->self.children, self.sibling) \
cgrp              713 kernel/cgroup/cgroup.c #define cgroup_for_each_live_descendant_pre(dsct, d_css, cgrp)		\
cgrp              714 kernel/cgroup/cgroup.c 	css_for_each_descendant_pre((d_css), cgroup_css((cgrp), NULL))	\
cgrp              722 kernel/cgroup/cgroup.c #define cgroup_for_each_live_descendant_post(dsct, d_css, cgrp)		\
cgrp              723 kernel/cgroup/cgroup.c 	css_for_each_descendant_post((d_css), cgroup_css((cgrp), NULL))	\
cgrp              755 kernel/cgroup/cgroup.c 	.dfl_cgrp		= &cgrp_dfl_root.cgrp,
cgrp              798 kernel/cgroup/cgroup.c static void cgroup_update_populated(struct cgroup *cgrp, bool populated)
cgrp              806 kernel/cgroup/cgroup.c 		bool was_populated = cgroup_is_populated(cgrp);
cgrp              809 kernel/cgroup/cgroup.c 			cgrp->nr_populated_csets += adj;
cgrp              812 kernel/cgroup/cgroup.c 				cgrp->nr_populated_threaded_children += adj;
cgrp              814 kernel/cgroup/cgroup.c 				cgrp->nr_populated_domain_children += adj;
cgrp              817 kernel/cgroup/cgroup.c 		if (was_populated == cgroup_is_populated(cgrp))
cgrp              820 kernel/cgroup/cgroup.c 		cgroup1_check_for_release(cgrp);
cgrp              821 kernel/cgroup/cgroup.c 		TRACE_CGROUP_PATH(notify_populated, cgrp,
cgrp              822 kernel/cgroup/cgroup.c 				  cgroup_is_populated(cgrp));
cgrp              823 kernel/cgroup/cgroup.c 		cgroup_file_notify(&cgrp->events_file);
cgrp              825 kernel/cgroup/cgroup.c 		child = cgrp;
cgrp              826 kernel/cgroup/cgroup.c 		cgrp = cgroup_parent(cgrp);
cgrp              827 kernel/cgroup/cgroup.c 	} while (cgrp);
cgrp              845 kernel/cgroup/cgroup.c 		cgroup_update_populated(link->cgrp, populated);
cgrp              958 kernel/cgroup/cgroup.c 		if (cgroup_parent(link->cgrp))
cgrp              959 kernel/cgroup/cgroup.c 			cgroup_put(link->cgrp);
cgrp             1031 kernel/cgroup/cgroup.c 		cgrp1 = link1->cgrp;
cgrp             1032 kernel/cgroup/cgroup.c 		cgrp2 = link2->cgrp;
cgrp             1061 kernel/cgroup/cgroup.c 					struct cgroup *cgrp,
cgrp             1064 kernel/cgroup/cgroup.c 	struct cgroup_root *root = cgrp->root;
cgrp             1081 kernel/cgroup/cgroup.c 			template[i] = cgroup_e_css_by_mask(cgrp, ss);
cgrp             1093 kernel/cgroup/cgroup.c 		if (!compare_css_sets(cset, old_cset, cgrp, template))
cgrp             1147 kernel/cgroup/cgroup.c 			 struct cgroup *cgrp)
cgrp             1153 kernel/cgroup/cgroup.c 	if (cgroup_on_dfl(cgrp))
cgrp             1154 kernel/cgroup/cgroup.c 		cset->dfl_cgrp = cgrp;
cgrp             1158 kernel/cgroup/cgroup.c 	link->cgrp = cgrp;
cgrp             1164 kernel/cgroup/cgroup.c 	list_move_tail(&link->cset_link, &cgrp->cset_links);
cgrp             1167 kernel/cgroup/cgroup.c 	if (cgroup_parent(cgrp))
cgrp             1168 kernel/cgroup/cgroup.c 		cgroup_get_live(cgrp);
cgrp             1180 kernel/cgroup/cgroup.c 				    struct cgroup *cgrp)
cgrp             1195 kernel/cgroup/cgroup.c 	cset = find_existing_css_set(old_cset, cgrp, template);
cgrp             1232 kernel/cgroup/cgroup.c 		struct cgroup *c = link->cgrp;
cgrp             1234 kernel/cgroup/cgroup.c 		if (c->root == cgrp->root)
cgrp             1235 kernel/cgroup/cgroup.c 			c = cgrp;
cgrp             1320 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = &root->cgrp;
cgrp             1325 kernel/cgroup/cgroup.c 	cgroup_lock_and_drain_offline(&cgrp_dfl_root.cgrp);
cgrp             1328 kernel/cgroup/cgroup.c 	BUG_ON(!list_empty(&cgrp->self.children));
cgrp             1339 kernel/cgroup/cgroup.c 	list_for_each_entry_safe(link, tmp_link, &cgrp->cset_links, cset_link) {
cgrp             1376 kernel/cgroup/cgroup.c 		res = &root->cgrp;
cgrp             1381 kernel/cgroup/cgroup.c 			struct cgroup *c = link->cgrp;
cgrp             1405 kernel/cgroup/cgroup.c 		res = &root->cgrp;
cgrp             1412 kernel/cgroup/cgroup.c 			struct cgroup *c = link->cgrp;
cgrp             1468 kernel/cgroup/cgroup.c static char *cgroup_file_name(struct cgroup *cgrp, const struct cftype *cft,
cgrp             1474 kernel/cgroup/cgroup.c 	    !(cgrp->root->flags & CGRP_ROOT_NOPREFIX)) {
cgrp             1478 kernel/cgroup/cgroup.c 			 dbg, cgroup_on_dfl(cgrp) ? ss->name : ss->legacy_name,
cgrp             1565 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             1568 kernel/cgroup/cgroup.c 		cgrp = kn->priv;
cgrp             1570 kernel/cgroup/cgroup.c 		cgrp = kn->parent->priv;
cgrp             1575 kernel/cgroup/cgroup.c 	cgroup_put(cgrp);
cgrp             1597 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             1600 kernel/cgroup/cgroup.c 		cgrp = kn->priv;
cgrp             1602 kernel/cgroup/cgroup.c 		cgrp = kn->parent->priv;
cgrp             1610 kernel/cgroup/cgroup.c 	if (!cgroup_tryget(cgrp))
cgrp             1615 kernel/cgroup/cgroup.c 		cgroup_lock_and_drain_offline(cgrp);
cgrp             1619 kernel/cgroup/cgroup.c 	if (!cgroup_is_dead(cgrp))
cgrp             1620 kernel/cgroup/cgroup.c 		return cgrp;
cgrp             1626 kernel/cgroup/cgroup.c static void cgroup_rm_file(struct cgroup *cgrp, const struct cftype *cft)
cgrp             1633 kernel/cgroup/cgroup.c 		struct cgroup_subsys_state *css = cgroup_css(cgrp, cft->ss);
cgrp             1643 kernel/cgroup/cgroup.c 	kernfs_remove_by_name(cgrp->kn, cgroup_file_name(cgrp, cft, name));
cgrp             1652 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = css->cgroup;
cgrp             1661 kernel/cgroup/cgroup.c 		if (cgroup_on_dfl(cgrp))
cgrp             1666 kernel/cgroup/cgroup.c 		cgroup_addrm_files(css, cgrp, cfts, false);
cgrp             1669 kernel/cgroup/cgroup.c 			cgroup_addrm_files(css, cgrp, cfts, false);
cgrp             1681 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = css->cgroup;
cgrp             1685 kernel/cgroup/cgroup.c 	if ((css->flags & CSS_VISIBLE) || !cgrp->kn)
cgrp             1689 kernel/cgroup/cgroup.c 		if (cgroup_on_dfl(cgrp))
cgrp             1694 kernel/cgroup/cgroup.c 		ret = cgroup_addrm_files(&cgrp->self, cgrp, cfts, true);
cgrp             1699 kernel/cgroup/cgroup.c 			ret = cgroup_addrm_files(css, cgrp, cfts, true);
cgrp             1714 kernel/cgroup/cgroup.c 		cgroup_addrm_files(css, cgrp, cfts, false);
cgrp             1721 kernel/cgroup/cgroup.c 	struct cgroup *dcgrp = &dst_root->cgrp;
cgrp             1733 kernel/cgroup/cgroup.c 		if (css_next_child(NULL, cgroup_css(&ss->root->cgrp, ss)) &&
cgrp             1744 kernel/cgroup/cgroup.c 		struct cgroup *scgrp = &src_root->cgrp;
cgrp             1945 kernel/cgroup/cgroup.c static void init_cgroup_housekeeping(struct cgroup *cgrp)
cgrp             1950 kernel/cgroup/cgroup.c 	INIT_LIST_HEAD(&cgrp->self.sibling);
cgrp             1951 kernel/cgroup/cgroup.c 	INIT_LIST_HEAD(&cgrp->self.children);
cgrp             1952 kernel/cgroup/cgroup.c 	INIT_LIST_HEAD(&cgrp->cset_links);
cgrp             1953 kernel/cgroup/cgroup.c 	INIT_LIST_HEAD(&cgrp->pidlists);
cgrp             1954 kernel/cgroup/cgroup.c 	mutex_init(&cgrp->pidlist_mutex);
cgrp             1955 kernel/cgroup/cgroup.c 	cgrp->self.cgroup = cgrp;
cgrp             1956 kernel/cgroup/cgroup.c 	cgrp->self.flags |= CSS_ONLINE;
cgrp             1957 kernel/cgroup/cgroup.c 	cgrp->dom_cgrp = cgrp;
cgrp             1958 kernel/cgroup/cgroup.c 	cgrp->max_descendants = INT_MAX;
cgrp             1959 kernel/cgroup/cgroup.c 	cgrp->max_depth = INT_MAX;
cgrp             1960 kernel/cgroup/cgroup.c 	INIT_LIST_HEAD(&cgrp->rstat_css_list);
cgrp             1961 kernel/cgroup/cgroup.c 	prev_cputime_init(&cgrp->prev_cputime);
cgrp             1964 kernel/cgroup/cgroup.c 		INIT_LIST_HEAD(&cgrp->e_csets[ssid]);
cgrp             1966 kernel/cgroup/cgroup.c 	init_waitqueue_head(&cgrp->offline_waitq);
cgrp             1967 kernel/cgroup/cgroup.c 	INIT_WORK(&cgrp->release_agent_work, cgroup1_release_agent);
cgrp             1973 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = &root->cgrp;
cgrp             1977 kernel/cgroup/cgroup.c 	cgrp->root = root;
cgrp             1978 kernel/cgroup/cgroup.c 	init_cgroup_housekeeping(cgrp);
cgrp             1987 kernel/cgroup/cgroup.c 		set_bit(CGRP_CPUSET_CLONE_CHILDREN, &root->cgrp.flags);
cgrp             1993 kernel/cgroup/cgroup.c 	struct cgroup *root_cgrp = &root->cgrp;
cgrp             2110 kernel/cgroup/cgroup.c 		struct cgroup *cgrp;
cgrp             2115 kernel/cgroup/cgroup.c 		cgrp = cset_cgroup_from_root(ctx->ns->root_cset, ctx->root);
cgrp             2120 kernel/cgroup/cgroup.c 		nsdentry = kernfs_node_dentry(cgrp->kn, sb);
cgrp             2131 kernel/cgroup/cgroup.c 		cgroup_put(&ctx->root->cgrp);
cgrp             2156 kernel/cgroup/cgroup.c 	cgroup_get_live(&cgrp_dfl_root.cgrp);
cgrp             2223 kernel/cgroup/cgroup.c 	if (list_empty(&root->cgrp.self.children) && root != &cgrp_dfl_root &&
cgrp             2224 kernel/cgroup/cgroup.c 	    !percpu_ref_is_dying(&root->cgrp.self.refcnt))
cgrp             2225 kernel/cgroup/cgroup.c 		percpu_ref_kill(&root->cgrp.self.refcnt);
cgrp             2226 kernel/cgroup/cgroup.c 	cgroup_put(&root->cgrp);
cgrp             2290 kernel/cgroup/cgroup.c int cgroup_path_ns_locked(struct cgroup *cgrp, char *buf, size_t buflen,
cgrp             2293 kernel/cgroup/cgroup.c 	struct cgroup *root = cset_cgroup_from_root(ns->root_cset, cgrp->root);
cgrp             2295 kernel/cgroup/cgroup.c 	return kernfs_path_from_node(cgrp->kn, root->kn, buf, buflen);
cgrp             2298 kernel/cgroup/cgroup.c int cgroup_path_ns(struct cgroup *cgrp, char *buf, size_t buflen,
cgrp             2306 kernel/cgroup/cgroup.c 	ret = cgroup_path_ns_locked(cgrp, buf, buflen, ns);
cgrp             2331 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             2341 kernel/cgroup/cgroup.c 		cgrp = task_cgroup_from_root(task, root);
cgrp             2342 kernel/cgroup/cgroup.c 		ret = cgroup_path_ns_locked(cgrp, buf, buflen, &init_cgroup_ns);
cgrp             2908 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp             2910 kernel/cgroup/cgroup.c 	cgroup_print_ss_mask(seq, cgroup_control(cgrp));
cgrp             2917 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp             2919 kernel/cgroup/cgroup.c 	cgroup_print_ss_mask(seq, cgrp->subtree_control);
cgrp             2932 kernel/cgroup/cgroup.c static int cgroup_update_dfl_csses(struct cgroup *cgrp)
cgrp             2946 kernel/cgroup/cgroup.c 	cgroup_for_each_live_descendant_pre(dsct, d_css, cgrp) {
cgrp             2984 kernel/cgroup/cgroup.c void cgroup_lock_and_drain_offline(struct cgroup *cgrp)
cgrp             2995 kernel/cgroup/cgroup.c 	cgroup_for_each_live_descendant_post(dsct, d_css, cgrp) {
cgrp             3025 kernel/cgroup/cgroup.c static void cgroup_save_control(struct cgroup *cgrp)
cgrp             3030 kernel/cgroup/cgroup.c 	cgroup_for_each_live_descendant_pre(dsct, d_css, cgrp) {
cgrp             3045 kernel/cgroup/cgroup.c static void cgroup_propagate_control(struct cgroup *cgrp)
cgrp             3050 kernel/cgroup/cgroup.c 	cgroup_for_each_live_descendant_pre(dsct, d_css, cgrp) {
cgrp             3066 kernel/cgroup/cgroup.c static void cgroup_restore_control(struct cgroup *cgrp)
cgrp             3071 kernel/cgroup/cgroup.c 	cgroup_for_each_live_descendant_post(dsct, d_css, cgrp) {
cgrp             3081 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = css->cgroup;
cgrp             3083 kernel/cgroup/cgroup.c 	if (cgroup_control(cgrp) & (1 << ss->id))
cgrp             3085 kernel/cgroup/cgroup.c 	if (!(cgroup_ss_mask(cgrp) & (1 << ss->id)))
cgrp             3087 kernel/cgroup/cgroup.c 	return cgroup_on_dfl(cgrp) && ss->implicit_on_dfl;
cgrp             3103 kernel/cgroup/cgroup.c static int cgroup_apply_control_enable(struct cgroup *cgrp)
cgrp             3110 kernel/cgroup/cgroup.c 	cgroup_for_each_live_descendant_pre(dsct, d_css, cgrp) {
cgrp             3149 kernel/cgroup/cgroup.c static void cgroup_apply_control_disable(struct cgroup *cgrp)
cgrp             3156 kernel/cgroup/cgroup.c 	cgroup_for_each_live_descendant_post(dsct, d_css, cgrp) {
cgrp             3194 kernel/cgroup/cgroup.c static int cgroup_apply_control(struct cgroup *cgrp)
cgrp             3198 kernel/cgroup/cgroup.c 	cgroup_propagate_control(cgrp);
cgrp             3200 kernel/cgroup/cgroup.c 	ret = cgroup_apply_control_enable(cgrp);
cgrp             3209 kernel/cgroup/cgroup.c 	ret = cgroup_update_dfl_csses(cgrp);
cgrp             3223 kernel/cgroup/cgroup.c static void cgroup_finalize_control(struct cgroup *cgrp, int ret)
cgrp             3226 kernel/cgroup/cgroup.c 		cgroup_restore_control(cgrp);
cgrp             3227 kernel/cgroup/cgroup.c 		cgroup_propagate_control(cgrp);
cgrp             3230 kernel/cgroup/cgroup.c 	cgroup_apply_control_disable(cgrp);
cgrp             3233 kernel/cgroup/cgroup.c static int cgroup_vet_subtree_control_enable(struct cgroup *cgrp, u16 enable)
cgrp             3242 kernel/cgroup/cgroup.c 	if (!cgroup_is_valid_domain(cgrp->dom_cgrp))
cgrp             3246 kernel/cgroup/cgroup.c 	if (cgroup_is_mixable(cgrp))
cgrp             3251 kernel/cgroup/cgroup.c 		if (cgroup_is_thread_root(cgrp) || cgroup_is_threaded(cgrp))
cgrp             3259 kernel/cgroup/cgroup.c 		if (cgroup_can_be_thread_root(cgrp) || cgroup_is_threaded(cgrp))
cgrp             3267 kernel/cgroup/cgroup.c 	if (cgroup_has_tasks(cgrp))
cgrp             3279 kernel/cgroup/cgroup.c 	struct cgroup *cgrp, *child;
cgrp             3312 kernel/cgroup/cgroup.c 	cgrp = cgroup_kn_lock_live(of->kn, true);
cgrp             3313 kernel/cgroup/cgroup.c 	if (!cgrp)
cgrp             3318 kernel/cgroup/cgroup.c 			if (cgrp->subtree_control & (1 << ssid)) {
cgrp             3323 kernel/cgroup/cgroup.c 			if (!(cgroup_control(cgrp) & (1 << ssid))) {
cgrp             3328 kernel/cgroup/cgroup.c 			if (!(cgrp->subtree_control & (1 << ssid))) {
cgrp             3334 kernel/cgroup/cgroup.c 			cgroup_for_each_live_child(child, cgrp) {
cgrp             3348 kernel/cgroup/cgroup.c 	ret = cgroup_vet_subtree_control_enable(cgrp, enable);
cgrp             3353 kernel/cgroup/cgroup.c 	cgroup_save_control(cgrp);
cgrp             3355 kernel/cgroup/cgroup.c 	cgrp->subtree_control |= enable;
cgrp             3356 kernel/cgroup/cgroup.c 	cgrp->subtree_control &= ~disable;
cgrp             3358 kernel/cgroup/cgroup.c 	ret = cgroup_apply_control(cgrp);
cgrp             3359 kernel/cgroup/cgroup.c 	cgroup_finalize_control(cgrp, ret);
cgrp             3363 kernel/cgroup/cgroup.c 	kernfs_activate(cgrp->kn);
cgrp             3378 kernel/cgroup/cgroup.c static int cgroup_enable_threaded(struct cgroup *cgrp)
cgrp             3380 kernel/cgroup/cgroup.c 	struct cgroup *parent = cgroup_parent(cgrp);
cgrp             3389 kernel/cgroup/cgroup.c 	if (cgroup_is_threaded(cgrp))
cgrp             3398 kernel/cgroup/cgroup.c 	if (cgroup_is_populated(cgrp) ||
cgrp             3399 kernel/cgroup/cgroup.c 	    cgrp->subtree_control & ~cgrp_dfl_threaded_ss_mask)
cgrp             3411 kernel/cgroup/cgroup.c 	cgroup_save_control(cgrp);
cgrp             3413 kernel/cgroup/cgroup.c 	cgroup_for_each_live_descendant_pre(dsct, d_css, cgrp)
cgrp             3414 kernel/cgroup/cgroup.c 		if (dsct == cgrp || cgroup_is_threaded(dsct))
cgrp             3417 kernel/cgroup/cgroup.c 	ret = cgroup_apply_control(cgrp);
cgrp             3421 kernel/cgroup/cgroup.c 	cgroup_finalize_control(cgrp, ret);
cgrp             3427 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp             3429 kernel/cgroup/cgroup.c 	if (cgroup_is_threaded(cgrp))
cgrp             3431 kernel/cgroup/cgroup.c 	else if (!cgroup_is_valid_domain(cgrp))
cgrp             3433 kernel/cgroup/cgroup.c 	else if (cgroup_is_thread_root(cgrp))
cgrp             3444 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             3452 kernel/cgroup/cgroup.c 	cgrp = cgroup_kn_lock_live(of->kn, true);
cgrp             3453 kernel/cgroup/cgroup.c 	if (!cgrp)
cgrp             3457 kernel/cgroup/cgroup.c 	ret = cgroup_enable_threaded(cgrp);
cgrp             3465 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp             3466 kernel/cgroup/cgroup.c 	int descendants = READ_ONCE(cgrp->max_descendants);
cgrp             3479 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             3495 kernel/cgroup/cgroup.c 	cgrp = cgroup_kn_lock_live(of->kn, false);
cgrp             3496 kernel/cgroup/cgroup.c 	if (!cgrp)
cgrp             3499 kernel/cgroup/cgroup.c 	cgrp->max_descendants = descendants;
cgrp             3508 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp             3509 kernel/cgroup/cgroup.c 	int depth = READ_ONCE(cgrp->max_depth);
cgrp             3522 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             3538 kernel/cgroup/cgroup.c 	cgrp = cgroup_kn_lock_live(of->kn, false);
cgrp             3539 kernel/cgroup/cgroup.c 	if (!cgrp)
cgrp             3542 kernel/cgroup/cgroup.c 	cgrp->max_depth = depth;
cgrp             3551 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp             3553 kernel/cgroup/cgroup.c 	seq_printf(seq, "populated %d\n", cgroup_is_populated(cgrp));
cgrp             3554 kernel/cgroup/cgroup.c 	seq_printf(seq, "frozen %d\n", test_bit(CGRP_FROZEN, &cgrp->flags));
cgrp             3572 kernel/cgroup/cgroup.c 						 struct cgroup *cgrp, int ssid)
cgrp             3581 kernel/cgroup/cgroup.c 	css = cgroup_tryget_css(cgrp, ss);
cgrp             3592 kernel/cgroup/cgroup.c 	struct cgroup __maybe_unused *cgrp = seq_css(seq)->cgroup;
cgrp             3597 kernel/cgroup/cgroup.c 	ret = cgroup_extra_stat_show(seq, cgrp, cpu_cgrp_id);
cgrp             3629 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             3631 kernel/cgroup/cgroup.c 	cgrp = cgroup_kn_lock_live(of->kn, false);
cgrp             3632 kernel/cgroup/cgroup.c 	if (!cgrp)
cgrp             3635 kernel/cgroup/cgroup.c 	cgroup_get(cgrp);
cgrp             3638 kernel/cgroup/cgroup.c 	new = psi_trigger_create(&cgrp->psi, buf, nbytes, res);
cgrp             3640 kernel/cgroup/cgroup.c 		cgroup_put(cgrp);
cgrp             3646 kernel/cgroup/cgroup.c 	cgroup_put(cgrp);
cgrp             3686 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp             3688 kernel/cgroup/cgroup.c 	seq_printf(seq, "%d\n", cgrp->freezer.freeze);
cgrp             3696 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             3707 kernel/cgroup/cgroup.c 	cgrp = cgroup_kn_lock_live(of->kn, false);
cgrp             3708 kernel/cgroup/cgroup.c 	if (!cgrp)
cgrp             3711 kernel/cgroup/cgroup.c 	cgroup_freeze(cgrp, freeze);
cgrp             3739 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = of->kn->parent->priv;
cgrp             3750 kernel/cgroup/cgroup.c 	if ((cgrp->root->flags & CGRP_ROOT_NS_DELEGATE) &&
cgrp             3752 kernel/cgroup/cgroup.c 	    ns != &init_cgroup_ns && ns->root_cset->dfl_cgrp == cgrp)
cgrp             3765 kernel/cgroup/cgroup.c 	css = cgroup_css(cgrp, cft->ss);
cgrp             3869 kernel/cgroup/cgroup.c static int cgroup_add_file(struct cgroup_subsys_state *css, struct cgroup *cgrp,
cgrp             3880 kernel/cgroup/cgroup.c 	kn = __kernfs_create_file(cgrp->kn, cgroup_file_name(cgrp, cft, name),
cgrp             3918 kernel/cgroup/cgroup.c 			      struct cgroup *cgrp, struct cftype cfts[],
cgrp             3929 kernel/cgroup/cgroup.c 		if ((cft->flags & __CFTYPE_ONLY_ON_DFL) && !cgroup_on_dfl(cgrp))
cgrp             3931 kernel/cgroup/cgroup.c 		if ((cft->flags & __CFTYPE_NOT_ON_DFL) && cgroup_on_dfl(cgrp))
cgrp             3933 kernel/cgroup/cgroup.c 		if ((cft->flags & CFTYPE_NOT_ON_ROOT) && !cgroup_parent(cgrp))
cgrp             3935 kernel/cgroup/cgroup.c 		if ((cft->flags & CFTYPE_ONLY_ON_ROOT) && cgroup_parent(cgrp))
cgrp             3940 kernel/cgroup/cgroup.c 			ret = cgroup_add_file(css, cgrp, cft);
cgrp             3949 kernel/cgroup/cgroup.c 			cgroup_rm_file(cgrp, cft);
cgrp             3958 kernel/cgroup/cgroup.c 	struct cgroup *root = &ss->root->cgrp;
cgrp             3966 kernel/cgroup/cgroup.c 		struct cgroup *cgrp = css->cgroup;
cgrp             3971 kernel/cgroup/cgroup.c 		ret = cgroup_addrm_files(css, cgrp, cfts, is_add);
cgrp             4681 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(s)->cgroup;
cgrp             4696 kernel/cgroup/cgroup.c 		css_task_iter_start(&cgrp->self, iter_flags, it);
cgrp             4699 kernel/cgroup/cgroup.c 		css_task_iter_start(&cgrp->self, iter_flags, it);
cgrp             4708 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = seq_css(s)->cgroup;
cgrp             4716 kernel/cgroup/cgroup.c 	if (cgroup_is_threaded(cgrp))
cgrp             4972 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = css->cgroup;
cgrp             4983 kernel/cgroup/cgroup.c 		cgroup_put(cgrp);
cgrp             4989 kernel/cgroup/cgroup.c 		atomic_dec(&cgrp->root->nr_cgrps);
cgrp             4990 kernel/cgroup/cgroup.c 		cgroup1_pidlist_destroy_all(cgrp);
cgrp             4991 kernel/cgroup/cgroup.c 		cancel_work_sync(&cgrp->release_agent_work);
cgrp             4993 kernel/cgroup/cgroup.c 		if (cgroup_parent(cgrp)) {
cgrp             5000 kernel/cgroup/cgroup.c 			cgroup_put(cgroup_parent(cgrp));
cgrp             5001 kernel/cgroup/cgroup.c 			kernfs_put(cgrp->kn);
cgrp             5002 kernel/cgroup/cgroup.c 			psi_cgroup_free(cgrp);
cgrp             5003 kernel/cgroup/cgroup.c 			if (cgroup_on_dfl(cgrp))
cgrp             5004 kernel/cgroup/cgroup.c 				cgroup_rstat_exit(cgrp);
cgrp             5005 kernel/cgroup/cgroup.c 			kfree(cgrp);
cgrp             5012 kernel/cgroup/cgroup.c 			cgroup_destroy_root(cgrp->root);
cgrp             5022 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = css->cgroup;
cgrp             5032 kernel/cgroup/cgroup.c 			cgroup_rstat_flush(cgrp);
cgrp             5043 kernel/cgroup/cgroup.c 		TRACE_CGROUP_PATH(release, cgrp);
cgrp             5045 kernel/cgroup/cgroup.c 		if (cgroup_on_dfl(cgrp))
cgrp             5046 kernel/cgroup/cgroup.c 			cgroup_rstat_flush(cgrp);
cgrp             5049 kernel/cgroup/cgroup.c 		for (tcgrp = cgroup_parent(cgrp); tcgrp;
cgrp             5054 kernel/cgroup/cgroup.c 		cgroup_idr_remove(&cgrp->root->cgroup_idr, cgrp->id);
cgrp             5055 kernel/cgroup/cgroup.c 		cgrp->id = -1;
cgrp             5064 kernel/cgroup/cgroup.c 		if (cgrp->kn)
cgrp             5065 kernel/cgroup/cgroup.c 			RCU_INIT_POINTER(*(void __rcu __force **)&cgrp->kn->priv,
cgrp             5085 kernel/cgroup/cgroup.c 			      struct cgroup_subsys *ss, struct cgroup *cgrp)
cgrp             5089 kernel/cgroup/cgroup.c 	cgroup_get_live(cgrp);
cgrp             5092 kernel/cgroup/cgroup.c 	css->cgroup = cgrp;
cgrp             5101 kernel/cgroup/cgroup.c 	if (cgroup_parent(cgrp)) {
cgrp             5102 kernel/cgroup/cgroup.c 		css->parent = cgroup_css(cgroup_parent(cgrp), ss);
cgrp             5106 kernel/cgroup/cgroup.c 	if (cgroup_on_dfl(cgrp) && ss->css_rstat_flush)
cgrp             5107 kernel/cgroup/cgroup.c 		list_add_rcu(&css->rstat_css_node, &cgrp->rstat_css_list);
cgrp             5109 kernel/cgroup/cgroup.c 	BUG_ON(cgroup_css(cgrp, ss));
cgrp             5161 kernel/cgroup/cgroup.c static struct cgroup_subsys_state *css_create(struct cgroup *cgrp,
cgrp             5164 kernel/cgroup/cgroup.c 	struct cgroup *parent = cgroup_parent(cgrp);
cgrp             5177 kernel/cgroup/cgroup.c 	init_and_link_css(css, ss, cgrp);
cgrp             5224 kernel/cgroup/cgroup.c 	struct cgroup *cgrp, *tcgrp;
cgrp             5229 kernel/cgroup/cgroup.c 	cgrp = kzalloc(struct_size(cgrp, ancestor_ids, (level + 1)),
cgrp             5231 kernel/cgroup/cgroup.c 	if (!cgrp)
cgrp             5234 kernel/cgroup/cgroup.c 	ret = percpu_ref_init(&cgrp->self.refcnt, css_release, 0, GFP_KERNEL);
cgrp             5239 kernel/cgroup/cgroup.c 		ret = cgroup_rstat_init(cgrp);
cgrp             5248 kernel/cgroup/cgroup.c 	cgrp->id = cgroup_idr_alloc(&root->cgroup_idr, NULL, 2, 0, GFP_KERNEL);
cgrp             5249 kernel/cgroup/cgroup.c 	if (cgrp->id < 0) {
cgrp             5254 kernel/cgroup/cgroup.c 	init_cgroup_housekeeping(cgrp);
cgrp             5256 kernel/cgroup/cgroup.c 	cgrp->self.parent = &parent->self;
cgrp             5257 kernel/cgroup/cgroup.c 	cgrp->root = root;
cgrp             5258 kernel/cgroup/cgroup.c 	cgrp->level = level;
cgrp             5260 kernel/cgroup/cgroup.c 	ret = psi_cgroup_alloc(cgrp);
cgrp             5264 kernel/cgroup/cgroup.c 	ret = cgroup_bpf_inherit(cgrp);
cgrp             5272 kernel/cgroup/cgroup.c 	cgrp->freezer.e_freeze = parent->freezer.e_freeze;
cgrp             5273 kernel/cgroup/cgroup.c 	if (cgrp->freezer.e_freeze) {
cgrp             5280 kernel/cgroup/cgroup.c 		set_bit(CGRP_FREEZE, &cgrp->flags);
cgrp             5281 kernel/cgroup/cgroup.c 		set_bit(CGRP_FROZEN, &cgrp->flags);
cgrp             5285 kernel/cgroup/cgroup.c 	for (tcgrp = cgrp; tcgrp; tcgrp = cgroup_parent(tcgrp)) {
cgrp             5286 kernel/cgroup/cgroup.c 		cgrp->ancestor_ids[tcgrp->level] = tcgrp->id;
cgrp             5288 kernel/cgroup/cgroup.c 		if (tcgrp != cgrp) {
cgrp             5296 kernel/cgroup/cgroup.c 			if (cgrp->freezer.e_freeze)
cgrp             5303 kernel/cgroup/cgroup.c 		set_bit(CGRP_NOTIFY_ON_RELEASE, &cgrp->flags);
cgrp             5306 kernel/cgroup/cgroup.c 		set_bit(CGRP_CPUSET_CLONE_CHILDREN, &cgrp->flags);
cgrp             5308 kernel/cgroup/cgroup.c 	cgrp->self.serial_nr = css_serial_nr_next++;
cgrp             5311 kernel/cgroup/cgroup.c 	list_add_tail_rcu(&cgrp->self.sibling, &cgroup_parent(cgrp)->self.children);
cgrp             5319 kernel/cgroup/cgroup.c 	cgroup_idr_replace(&root->cgroup_idr, cgrp, cgrp->id);
cgrp             5325 kernel/cgroup/cgroup.c 	if (!cgroup_on_dfl(cgrp))
cgrp             5326 kernel/cgroup/cgroup.c 		cgrp->subtree_control = cgroup_control(cgrp);
cgrp             5328 kernel/cgroup/cgroup.c 	cgroup_propagate_control(cgrp);
cgrp             5330 kernel/cgroup/cgroup.c 	return cgrp;
cgrp             5333 kernel/cgroup/cgroup.c 	psi_cgroup_free(cgrp);
cgrp             5335 kernel/cgroup/cgroup.c 	cgroup_idr_remove(&root->cgroup_idr, cgrp->id);
cgrp             5338 kernel/cgroup/cgroup.c 		cgroup_rstat_exit(cgrp);
cgrp             5340 kernel/cgroup/cgroup.c 	percpu_ref_exit(&cgrp->self.refcnt);
cgrp             5342 kernel/cgroup/cgroup.c 	kfree(cgrp);
cgrp             5371 kernel/cgroup/cgroup.c 	struct cgroup *parent, *cgrp;
cgrp             5388 kernel/cgroup/cgroup.c 	cgrp = cgroup_create(parent);
cgrp             5389 kernel/cgroup/cgroup.c 	if (IS_ERR(cgrp)) {
cgrp             5390 kernel/cgroup/cgroup.c 		ret = PTR_ERR(cgrp);
cgrp             5395 kernel/cgroup/cgroup.c 	kn = kernfs_create_dir(parent->kn, name, mode, cgrp);
cgrp             5400 kernel/cgroup/cgroup.c 	cgrp->kn = kn;
cgrp             5412 kernel/cgroup/cgroup.c 	ret = css_populate_dir(&cgrp->self);
cgrp             5416 kernel/cgroup/cgroup.c 	ret = cgroup_apply_control_enable(cgrp);
cgrp             5420 kernel/cgroup/cgroup.c 	TRACE_CGROUP_PATH(mkdir, cgrp);
cgrp             5429 kernel/cgroup/cgroup.c 	cgroup_destroy_locked(cgrp);
cgrp             5536 kernel/cgroup/cgroup.c static int cgroup_destroy_locked(struct cgroup *cgrp)
cgrp             5539 kernel/cgroup/cgroup.c 	struct cgroup *tcgrp, *parent = cgroup_parent(cgrp);
cgrp             5550 kernel/cgroup/cgroup.c 	if (cgroup_is_populated(cgrp))
cgrp             5558 kernel/cgroup/cgroup.c 	if (css_has_online_children(&cgrp->self))
cgrp             5567 kernel/cgroup/cgroup.c 	cgrp->self.flags &= ~CSS_ONLINE;
cgrp             5570 kernel/cgroup/cgroup.c 	list_for_each_entry(link, &cgrp->cset_links, cset_link)
cgrp             5575 kernel/cgroup/cgroup.c 	for_each_css(css, ssid, cgrp)
cgrp             5579 kernel/cgroup/cgroup.c 	css_clear_dir(&cgrp->self);
cgrp             5580 kernel/cgroup/cgroup.c 	kernfs_remove(cgrp->kn);
cgrp             5582 kernel/cgroup/cgroup.c 	if (parent && cgroup_is_threaded(cgrp))
cgrp             5586 kernel/cgroup/cgroup.c 	for (tcgrp = cgroup_parent(cgrp); tcgrp; tcgrp = cgroup_parent(tcgrp)) {
cgrp             5593 kernel/cgroup/cgroup.c 		if (test_bit(CGRP_FROZEN, &cgrp->flags))
cgrp             5600 kernel/cgroup/cgroup.c 	cgroup_bpf_offline(cgrp);
cgrp             5603 kernel/cgroup/cgroup.c 	percpu_ref_kill(&cgrp->self.refcnt);
cgrp             5610 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             5613 kernel/cgroup/cgroup.c 	cgrp = cgroup_kn_lock_live(kn, false);
cgrp             5614 kernel/cgroup/cgroup.c 	if (!cgrp)
cgrp             5617 kernel/cgroup/cgroup.c 	ret = cgroup_destroy_locked(cgrp);
cgrp             5619 kernel/cgroup/cgroup.c 		TRACE_CGROUP_PATH(rmdir, cgrp);
cgrp             5645 kernel/cgroup/cgroup.c 	css = ss->css_alloc(cgroup_css(&cgrp_dfl_root.cgrp, ss));
cgrp             5648 kernel/cgroup/cgroup.c 	init_and_link_css(css, ss, &cgrp_dfl_root.cgrp);
cgrp             5699 kernel/cgroup/cgroup.c 	cgrp_dfl_root.cgrp.self.flags |= CSS_NO_REF;
cgrp             5775 kernel/cgroup/cgroup.c 			      &cgrp_dfl_root.cgrp.e_csets[ssid]);
cgrp             5887 kernel/cgroup/cgroup.c 		struct cgroup *cgrp;
cgrp             5904 kernel/cgroup/cgroup.c 		cgrp = task_cgroup_from_root(tsk, root);
cgrp             5915 kernel/cgroup/cgroup.c 		if (cgroup_on_dfl(cgrp) || !(tsk->flags & PF_EXITING)) {
cgrp             5916 kernel/cgroup/cgroup.c 			retval = cgroup_path_ns_locked(cgrp, buf, PATH_MAX,
cgrp             5928 kernel/cgroup/cgroup.c 		if (cgroup_on_dfl(cgrp) && cgroup_is_dead(cgrp))
cgrp             6206 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             6220 kernel/cgroup/cgroup.c 	cgrp = rcu_dereference(*(void __rcu __force **)&kn->priv);
cgrp             6221 kernel/cgroup/cgroup.c 	if (cgrp)
cgrp             6222 kernel/cgroup/cgroup.c 		css = cgroup_css(cgrp, ss);
cgrp             6257 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             6261 kernel/cgroup/cgroup.c 	kn = kernfs_walk_and_get(cgrp_dfl_root.cgrp.kn, path);
cgrp             6264 kernel/cgroup/cgroup.c 			cgrp = kn->priv;
cgrp             6265 kernel/cgroup/cgroup.c 			cgroup_get_live(cgrp);
cgrp             6267 kernel/cgroup/cgroup.c 			cgrp = ERR_PTR(-ENOTDIR);
cgrp             6271 kernel/cgroup/cgroup.c 		cgrp = ERR_PTR(-ENOENT);
cgrp             6275 kernel/cgroup/cgroup.c 	return cgrp;
cgrp             6291 kernel/cgroup/cgroup.c 	struct cgroup *cgrp;
cgrp             6303 kernel/cgroup/cgroup.c 	cgrp = css->cgroup;
cgrp             6304 kernel/cgroup/cgroup.c 	if (!cgroup_on_dfl(cgrp)) {
cgrp             6305 kernel/cgroup/cgroup.c 		cgroup_put(cgrp);
cgrp             6309 kernel/cgroup/cgroup.c 	return cgrp;
cgrp             6420 kernel/cgroup/cgroup.c 	struct cgroup *cgrp = sock_cgroup_ptr(skcd);
cgrp             6422 kernel/cgroup/cgroup.c 	cgroup_bpf_put(cgrp);
cgrp             6423 kernel/cgroup/cgroup.c 	cgroup_put(cgrp);
cgrp             6429 kernel/cgroup/cgroup.c int cgroup_bpf_attach(struct cgroup *cgrp, struct bpf_prog *prog,
cgrp             6435 kernel/cgroup/cgroup.c 	ret = __cgroup_bpf_attach(cgrp, prog, type, flags);
cgrp             6439 kernel/cgroup/cgroup.c int cgroup_bpf_detach(struct cgroup *cgrp, struct bpf_prog *prog,
cgrp             6445 kernel/cgroup/cgroup.c 	ret = __cgroup_bpf_detach(cgrp, prog, type);
cgrp             6449 kernel/cgroup/cgroup.c int cgroup_bpf_query(struct cgroup *cgrp, const union bpf_attr *attr,
cgrp             6455 kernel/cgroup/cgroup.c 	ret = __cgroup_bpf_query(cgrp, attr, uattr);
cgrp             3528 kernel/cgroup/cpuset.c 	struct cgroup *cgrp;
cgrp             3532 kernel/cgroup/cpuset.c 	cgrp = task_cs(current)->css.cgroup;
cgrp             3534 kernel/cgroup/cpuset.c 	pr_cont_cgroup_name(cgrp);
cgrp              101 kernel/cgroup/debug.c 		struct cgroup *c = link->cgrp;
cgrp              206 kernel/cgroup/debug.c 	struct cgroup *cgrp;
cgrp              212 kernel/cgroup/debug.c 	cgrp = cgroup_kn_lock_live(of->kn, false);
cgrp              213 kernel/cgroup/debug.c 	if (!cgrp)
cgrp              217 kernel/cgroup/debug.c 		css = rcu_dereference_check(cgrp->subsys[ss->id], true);
cgrp              258 kernel/cgroup/debug.c 	struct cgroup *cgrp;
cgrp              260 kernel/cgroup/debug.c 	cgrp = cgroup_kn_lock_live(of->kn, false);
cgrp              261 kernel/cgroup/debug.c 	if (!cgrp)
cgrp              264 kernel/cgroup/debug.c 	cgroup_masks_read_one(seq, "subtree_control", cgrp->subtree_control);
cgrp              265 kernel/cgroup/debug.c 	cgroup_masks_read_one(seq, "subtree_ss_mask", cgrp->subtree_ss_mask);
cgrp               14 kernel/cgroup/freezer.c static void cgroup_propagate_frozen(struct cgroup *cgrp, bool frozen)
cgrp               24 kernel/cgroup/freezer.c 	while ((cgrp = cgroup_parent(cgrp))) {
cgrp               26 kernel/cgroup/freezer.c 			cgrp->freezer.nr_frozen_descendants += desc;
cgrp               27 kernel/cgroup/freezer.c 			if (!test_bit(CGRP_FROZEN, &cgrp->flags) &&
cgrp               28 kernel/cgroup/freezer.c 			    test_bit(CGRP_FREEZE, &cgrp->flags) &&
cgrp               29 kernel/cgroup/freezer.c 			    cgrp->freezer.nr_frozen_descendants ==
cgrp               30 kernel/cgroup/freezer.c 			    cgrp->nr_descendants) {
cgrp               31 kernel/cgroup/freezer.c 				set_bit(CGRP_FROZEN, &cgrp->flags);
cgrp               32 kernel/cgroup/freezer.c 				cgroup_file_notify(&cgrp->events_file);
cgrp               33 kernel/cgroup/freezer.c 				TRACE_CGROUP_PATH(notify_frozen, cgrp, 1);
cgrp               37 kernel/cgroup/freezer.c 			cgrp->freezer.nr_frozen_descendants -= desc;
cgrp               38 kernel/cgroup/freezer.c 			if (test_bit(CGRP_FROZEN, &cgrp->flags)) {
cgrp               39 kernel/cgroup/freezer.c 				clear_bit(CGRP_FROZEN, &cgrp->flags);
cgrp               40 kernel/cgroup/freezer.c 				cgroup_file_notify(&cgrp->events_file);
cgrp               41 kernel/cgroup/freezer.c 				TRACE_CGROUP_PATH(notify_frozen, cgrp, 0);
cgrp               52 kernel/cgroup/freezer.c void cgroup_update_frozen(struct cgroup *cgrp)
cgrp               63 kernel/cgroup/freezer.c 	frozen = test_bit(CGRP_FREEZE, &cgrp->flags) &&
cgrp               64 kernel/cgroup/freezer.c 		cgrp->freezer.nr_frozen_tasks == __cgroup_task_count(cgrp);
cgrp               68 kernel/cgroup/freezer.c 		if (test_bit(CGRP_FROZEN, &cgrp->flags))
cgrp               71 kernel/cgroup/freezer.c 		set_bit(CGRP_FROZEN, &cgrp->flags);
cgrp               74 kernel/cgroup/freezer.c 		if (!test_bit(CGRP_FROZEN, &cgrp->flags))
cgrp               77 kernel/cgroup/freezer.c 		clear_bit(CGRP_FROZEN, &cgrp->flags);
cgrp               79 kernel/cgroup/freezer.c 	cgroup_file_notify(&cgrp->events_file);
cgrp               80 kernel/cgroup/freezer.c 	TRACE_CGROUP_PATH(notify_frozen, cgrp, frozen);
cgrp               83 kernel/cgroup/freezer.c 	cgroup_propagate_frozen(cgrp, frozen);
cgrp               89 kernel/cgroup/freezer.c static void cgroup_inc_frozen_cnt(struct cgroup *cgrp)
cgrp               91 kernel/cgroup/freezer.c 	cgrp->freezer.nr_frozen_tasks++;
cgrp               97 kernel/cgroup/freezer.c static void cgroup_dec_frozen_cnt(struct cgroup *cgrp)
cgrp               99 kernel/cgroup/freezer.c 	cgrp->freezer.nr_frozen_tasks--;
cgrp              100 kernel/cgroup/freezer.c 	WARN_ON_ONCE(cgrp->freezer.nr_frozen_tasks < 0);
cgrp              109 kernel/cgroup/freezer.c 	struct cgroup *cgrp;
cgrp              116 kernel/cgroup/freezer.c 	cgrp = task_dfl_cgroup(current);
cgrp              117 kernel/cgroup/freezer.c 	cgroup_inc_frozen_cnt(cgrp);
cgrp              118 kernel/cgroup/freezer.c 	cgroup_update_frozen(cgrp);
cgrp              133 kernel/cgroup/freezer.c 	struct cgroup *cgrp;
cgrp              136 kernel/cgroup/freezer.c 	cgrp = task_dfl_cgroup(current);
cgrp              137 kernel/cgroup/freezer.c 	if (always_leave || !test_bit(CGRP_FREEZE, &cgrp->flags)) {
cgrp              138 kernel/cgroup/freezer.c 		cgroup_dec_frozen_cnt(cgrp);
cgrp              139 kernel/cgroup/freezer.c 		cgroup_update_frozen(cgrp);
cgrp              177 kernel/cgroup/freezer.c static void cgroup_do_freeze(struct cgroup *cgrp, bool freeze)
cgrp              186 kernel/cgroup/freezer.c 		set_bit(CGRP_FREEZE, &cgrp->flags);
cgrp              188 kernel/cgroup/freezer.c 		clear_bit(CGRP_FREEZE, &cgrp->flags);
cgrp              192 kernel/cgroup/freezer.c 		TRACE_CGROUP_PATH(freeze, cgrp);
cgrp              194 kernel/cgroup/freezer.c 		TRACE_CGROUP_PATH(unfreeze, cgrp);
cgrp              196 kernel/cgroup/freezer.c 	css_task_iter_start(&cgrp->self, 0, &it);
cgrp              213 kernel/cgroup/freezer.c 	if (cgrp->nr_descendants == cgrp->freezer.nr_frozen_descendants)
cgrp              214 kernel/cgroup/freezer.c 		cgroup_update_frozen(cgrp);
cgrp              260 kernel/cgroup/freezer.c void cgroup_freeze(struct cgroup *cgrp, bool freeze)
cgrp              271 kernel/cgroup/freezer.c 	if (cgrp->freezer.freeze == freeze)
cgrp              274 kernel/cgroup/freezer.c 	cgrp->freezer.freeze = freeze;
cgrp              279 kernel/cgroup/freezer.c 	css_for_each_descendant_pre(css, &cgrp->self) {
cgrp              319 kernel/cgroup/freezer.c 		TRACE_CGROUP_PATH(notify_frozen, cgrp,
cgrp              320 kernel/cgroup/freezer.c 				  test_bit(CGRP_FROZEN, &cgrp->flags));
cgrp              321 kernel/cgroup/freezer.c 		cgroup_file_notify(&cgrp->events_file);
cgrp                9 kernel/cgroup/rstat.c static void cgroup_base_stat_flush(struct cgroup *cgrp, int cpu);
cgrp               11 kernel/cgroup/rstat.c static struct cgroup_rstat_cpu *cgroup_rstat_cpu(struct cgroup *cgrp, int cpu)
cgrp               13 kernel/cgroup/rstat.c 	return per_cpu_ptr(cgrp->rstat_cpu, cpu);
cgrp               25 kernel/cgroup/rstat.c void cgroup_rstat_updated(struct cgroup *cgrp, int cpu)
cgrp               32 kernel/cgroup/rstat.c 	if (!cgroup_parent(cgrp))
cgrp               43 kernel/cgroup/rstat.c 	if (cgroup_rstat_cpu(cgrp, cpu)->updated_next)
cgrp               49 kernel/cgroup/rstat.c 	for (parent = cgroup_parent(cgrp); parent;
cgrp               50 kernel/cgroup/rstat.c 	     cgrp = parent, parent = cgroup_parent(cgrp)) {
cgrp               51 kernel/cgroup/rstat.c 		struct cgroup_rstat_cpu *rstatc = cgroup_rstat_cpu(cgrp, cpu);
cgrp               62 kernel/cgroup/rstat.c 		prstatc->updated_children = cgrp;
cgrp              142 kernel/cgroup/rstat.c static void cgroup_rstat_flush_locked(struct cgroup *cgrp, bool may_sleep)
cgrp              155 kernel/cgroup/rstat.c 		while ((pos = cgroup_rstat_cpu_pop_updated(pos, cgrp, cpu))) {
cgrp              192 kernel/cgroup/rstat.c void cgroup_rstat_flush(struct cgroup *cgrp)
cgrp              197 kernel/cgroup/rstat.c 	cgroup_rstat_flush_locked(cgrp, true);
cgrp              207 kernel/cgroup/rstat.c void cgroup_rstat_flush_irqsafe(struct cgroup *cgrp)
cgrp              212 kernel/cgroup/rstat.c 	cgroup_rstat_flush_locked(cgrp, false);
cgrp              225 kernel/cgroup/rstat.c void cgroup_rstat_flush_hold(struct cgroup *cgrp)
cgrp              230 kernel/cgroup/rstat.c 	cgroup_rstat_flush_locked(cgrp, true);
cgrp              242 kernel/cgroup/rstat.c int cgroup_rstat_init(struct cgroup *cgrp)
cgrp              247 kernel/cgroup/rstat.c 	if (!cgrp->rstat_cpu) {
cgrp              248 kernel/cgroup/rstat.c 		cgrp->rstat_cpu = alloc_percpu(struct cgroup_rstat_cpu);
cgrp              249 kernel/cgroup/rstat.c 		if (!cgrp->rstat_cpu)
cgrp              255 kernel/cgroup/rstat.c 		struct cgroup_rstat_cpu *rstatc = cgroup_rstat_cpu(cgrp, cpu);
cgrp              257 kernel/cgroup/rstat.c 		rstatc->updated_children = cgrp;
cgrp              264 kernel/cgroup/rstat.c void cgroup_rstat_exit(struct cgroup *cgrp)
cgrp              268 kernel/cgroup/rstat.c 	cgroup_rstat_flush(cgrp);
cgrp              272 kernel/cgroup/rstat.c 		struct cgroup_rstat_cpu *rstatc = cgroup_rstat_cpu(cgrp, cpu);
cgrp              274 kernel/cgroup/rstat.c 		if (WARN_ON_ONCE(rstatc->updated_children != cgrp) ||
cgrp              279 kernel/cgroup/rstat.c 	free_percpu(cgrp->rstat_cpu);
cgrp              280 kernel/cgroup/rstat.c 	cgrp->rstat_cpu = NULL;
cgrp              290 kernel/cgroup/rstat.c 	BUG_ON(cgroup_rstat_init(&cgrp_dfl_root.cgrp));
cgrp              305 kernel/cgroup/rstat.c static void cgroup_base_stat_flush(struct cgroup *cgrp, int cpu)
cgrp              307 kernel/cgroup/rstat.c 	struct cgroup *parent = cgroup_parent(cgrp);
cgrp              308 kernel/cgroup/rstat.c 	struct cgroup_rstat_cpu *rstatc = cgroup_rstat_cpu(cgrp, cpu);
cgrp              328 kernel/cgroup/rstat.c 	cgroup_base_stat_accumulate(&delta, &cgrp->pending_bstat);
cgrp              329 kernel/cgroup/rstat.c 	memset(&cgrp->pending_bstat, 0, sizeof(cgrp->pending_bstat));
cgrp              332 kernel/cgroup/rstat.c 	cgroup_base_stat_accumulate(&cgrp->bstat, &delta);
cgrp              338 kernel/cgroup/rstat.c cgroup_base_stat_cputime_account_begin(struct cgroup *cgrp)
cgrp              342 kernel/cgroup/rstat.c 	rstatc = get_cpu_ptr(cgrp->rstat_cpu);
cgrp              347 kernel/cgroup/rstat.c static void cgroup_base_stat_cputime_account_end(struct cgroup *cgrp,
cgrp              351 kernel/cgroup/rstat.c 	cgroup_rstat_updated(cgrp, smp_processor_id());
cgrp              355 kernel/cgroup/rstat.c void __cgroup_account_cputime(struct cgroup *cgrp, u64 delta_exec)
cgrp              359 kernel/cgroup/rstat.c 	rstatc = cgroup_base_stat_cputime_account_begin(cgrp);
cgrp              361 kernel/cgroup/rstat.c 	cgroup_base_stat_cputime_account_end(cgrp, rstatc);
cgrp              364 kernel/cgroup/rstat.c void __cgroup_account_cputime_field(struct cgroup *cgrp,
cgrp              369 kernel/cgroup/rstat.c 	rstatc = cgroup_base_stat_cputime_account_begin(cgrp);
cgrp              385 kernel/cgroup/rstat.c 	cgroup_base_stat_cputime_account_end(cgrp, rstatc);
cgrp              390 kernel/cgroup/rstat.c 	struct cgroup *cgrp = seq_css(seq)->cgroup;
cgrp              393 kernel/cgroup/rstat.c 	if (!cgroup_parent(cgrp))
cgrp              396 kernel/cgroup/rstat.c 	cgroup_rstat_flush_hold(cgrp);
cgrp              397 kernel/cgroup/rstat.c 	usage = cgrp->bstat.cputime.sum_exec_runtime;
cgrp              398 kernel/cgroup/rstat.c 	cputime_adjust(&cgrp->bstat.cputime, &cgrp->prev_cputime, &utime, &stime);
cgrp              682 kernel/events/core.c 	if (!event->cgrp)
cgrp              686 kernel/events/core.c 	if (!cpuctx->cgrp)
cgrp              695 kernel/events/core.c 	return cgroup_is_descendant(cpuctx->cgrp->css.cgroup,
cgrp              696 kernel/events/core.c 				    event->cgrp->css.cgroup);
cgrp              701 kernel/events/core.c 	css_put(&event->cgrp->css);
cgrp              702 kernel/events/core.c 	event->cgrp = NULL;
cgrp              707 kernel/events/core.c 	return event->cgrp != NULL;
cgrp              714 kernel/events/core.c 	t = per_cpu_ptr(event->cgrp->info, event->cpu);
cgrp              718 kernel/events/core.c static inline void __update_cgrp_time(struct perf_cgroup *cgrp)
cgrp              725 kernel/events/core.c 	info = this_cpu_ptr(cgrp->info);
cgrp              733 kernel/events/core.c 	struct perf_cgroup *cgrp = cpuctx->cgrp;
cgrp              736 kernel/events/core.c 	if (cgrp) {
cgrp              737 kernel/events/core.c 		for (css = &cgrp->css; css; css = css->parent) {
cgrp              738 kernel/events/core.c 			cgrp = container_of(css, struct perf_cgroup, css);
cgrp              739 kernel/events/core.c 			__update_cgrp_time(cgrp);
cgrp              746 kernel/events/core.c 	struct perf_cgroup *cgrp;
cgrp              755 kernel/events/core.c 	cgrp = perf_cgroup_from_task(current, event->ctx);
cgrp              759 kernel/events/core.c 	if (cgroup_is_descendant(cgrp->css.cgroup, event->cgrp->css.cgroup))
cgrp              760 kernel/events/core.c 		__update_cgrp_time(event->cgrp);
cgrp              767 kernel/events/core.c 	struct perf_cgroup *cgrp;
cgrp              779 kernel/events/core.c 	cgrp = perf_cgroup_from_task(task, ctx);
cgrp              781 kernel/events/core.c 	for (css = &cgrp->css; css; css = css->parent) {
cgrp              782 kernel/events/core.c 		cgrp = container_of(css, struct perf_cgroup, css);
cgrp              783 kernel/events/core.c 		info = this_cpu_ptr(cgrp->info);
cgrp              824 kernel/events/core.c 			cpuctx->cgrp = NULL;
cgrp              828 kernel/events/core.c 			WARN_ON_ONCE(cpuctx->cgrp);
cgrp              836 kernel/events/core.c 			cpuctx->cgrp = perf_cgroup_from_task(task,
cgrp              903 kernel/events/core.c 	struct perf_cgroup *cgrp;
cgrp              918 kernel/events/core.c 	cgrp = container_of(css, struct perf_cgroup, css);
cgrp              919 kernel/events/core.c 	event->cgrp = cgrp;
cgrp              926 kernel/events/core.c 	if (group_leader && group_leader->cgrp != cgrp) {
cgrp              939 kernel/events/core.c 	t = per_cpu_ptr(event->cgrp->info, event->cpu);
cgrp              969 kernel/events/core.c 	if (add && !cpuctx->cgrp) {
cgrp              970 kernel/events/core.c 		struct perf_cgroup *cgrp = perf_cgroup_from_task(current, ctx);
cgrp              972 kernel/events/core.c 		if (cgroup_is_descendant(cgrp->css.cgroup, event->cgrp->css.cgroup))
cgrp              973 kernel/events/core.c 			cpuctx->cgrp = cgrp;
cgrp              983 kernel/events/core.c 		cpuctx->cgrp = NULL;
cgrp             2626 kernel/events/core.c 		struct perf_cgroup *cgrp = perf_cgroup_from_task(current, ctx);
cgrp             2627 kernel/events/core.c 		reprogram = cgroup_is_descendant(cgrp->css.cgroup,
cgrp             2628 kernel/events/core.c 					event->cgrp->css.cgroup);
cgrp              566 kernel/trace/bpf_trace.c 	struct cgroup *cgrp;
cgrp              571 kernel/trace/bpf_trace.c 	cgrp = READ_ONCE(array->ptrs[idx]);
cgrp              572 kernel/trace/bpf_trace.c 	if (unlikely(!cgrp))
cgrp              575 kernel/trace/bpf_trace.c 	return task_under_cgroup_hierarchy(current, cgrp);
cgrp             4059 net/core/filter.c 	struct cgroup *cgrp;
cgrp             4068 net/core/filter.c 	cgrp = READ_ONCE(array->ptrs[idx]);
cgrp             4069 net/core/filter.c 	if (unlikely(!cgrp))
cgrp             4072 net/core/filter.c 	return sk_under_cgroup_hierarchy(sk, cgrp);
cgrp             4088 net/core/filter.c 	struct cgroup *cgrp;
cgrp             4093 net/core/filter.c 	cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data);
cgrp             4094 net/core/filter.c 	return cgrp->kn->id.id;
cgrp             4109 net/core/filter.c 	struct cgroup *cgrp;
cgrp             4114 net/core/filter.c 	cgrp = sock_cgroup_ptr(&sk->sk_cgrp_data);
cgrp             4115 net/core/filter.c 	ancestor = cgroup_ancestor(cgrp, ancestor_level);
cgrp               39 net/netfilter/xt_cgroup.c 	struct cgroup *cgrp;
cgrp               56 net/netfilter/xt_cgroup.c 		cgrp = cgroup_get_from_path(info->path);
cgrp               57 net/netfilter/xt_cgroup.c 		if (IS_ERR(cgrp)) {
cgrp               59 net/netfilter/xt_cgroup.c 					    PTR_ERR(cgrp));
cgrp               62 net/netfilter/xt_cgroup.c 		info->priv = cgrp;
cgrp               71 net/netfilter/xt_cgroup.c 	struct cgroup *cgrp;
cgrp               88 net/netfilter/xt_cgroup.c 		cgrp = cgroup_get_from_path(info->path);
cgrp               89 net/netfilter/xt_cgroup.c 		if (IS_ERR(cgrp)) {
cgrp               91 net/netfilter/xt_cgroup.c 					    PTR_ERR(cgrp));
cgrp               94 net/netfilter/xt_cgroup.c 		info->priv = cgrp;
cgrp              101 tools/perf/util/cgroup.c 		if (!counter->cgrp)
cgrp              103 tools/perf/util/cgroup.c 		if (!strcmp(counter->cgrp->name, str))
cgrp              104 tools/perf/util/cgroup.c 			return cgroup__get(counter->cgrp);
cgrp              144 tools/perf/util/cgroup.c 	struct cgroup *cgrp = evlist__findnew_cgroup(evlist, str);
cgrp              147 tools/perf/util/cgroup.c 	if (!cgrp)
cgrp              160 tools/perf/util/cgroup.c 	cgroup__put(cgrp);
cgrp              163 tools/perf/util/cgroup.c 	counter->cgrp = cgrp;
cgrp              174 tools/perf/util/cgroup.c void cgroup__put(struct cgroup *cgrp)
cgrp              176 tools/perf/util/cgroup.c 	if (cgrp && refcount_dec_and_test(&cgrp->refcnt)) {
cgrp              177 tools/perf/util/cgroup.c 		cgroup__delete(cgrp);
cgrp              190 tools/perf/util/cgroup.c 	if (evsel->cgrp == NULL)
cgrp              191 tools/perf/util/cgroup.c 		evsel->cgrp = cgroup__get(cgroup);
cgrp              207 tools/perf/util/cgroup.c 	struct cgroup *cgrp = NULL;
cgrp              243 tools/perf/util/cgroup.c 				cgrp = counter->cgrp;
cgrp              245 tools/perf/util/cgroup.c 				counter->cgrp = cgrp;
cgrp              246 tools/perf/util/cgroup.c 				refcount_inc(&cgrp->refcnt);
cgrp             1251 tools/perf/util/evsel.c 	cgroup__put(evsel->cgrp);
cgrp             1617 tools/perf/util/evsel.c 	if (evsel->cgrp) {
cgrp             1619 tools/perf/util/evsel.c 		pid = evsel->cgrp->fd;
cgrp             1655 tools/perf/util/evsel.c 			if (!evsel->cgrp && !evsel->core.system_wide)
cgrp               60 tools/perf/util/evsel.h 	struct cgroup		*cgrp;
cgrp               63 tools/perf/util/stat-display.c 		const char *cgrp_name = evsel->cgrp ? evsel->cgrp->name  : "";
cgrp              430 tools/perf/util/stat-display.c 		if (counter->cgrp)
cgrp              556 tools/perf/util/stat-display.c 		    alias->cgrp != counter->cgrp ||
cgrp             1154 tools/testing/selftests/bpf/test_sockmap.c static int __test_exec(int cgrp, int test, struct sockmap_options *opt)
cgrp             1176 tools/testing/selftests/bpf/test_sockmap.c 	err = run_options(opt, cgrp, test);
cgrp             1184 tools/testing/selftests/bpf/test_sockmap.c static int test_exec(int cgrp, struct sockmap_options *opt)
cgrp             1186 tools/testing/selftests/bpf/test_sockmap.c 	int err = __test_exec(cgrp, SENDMSG, opt);
cgrp             1191 tools/testing/selftests/bpf/test_sockmap.c 	err = __test_exec(cgrp, SENDPAGE, opt);
cgrp             1196 tools/testing/selftests/bpf/test_sockmap.c static int test_loop(int cgrp)
cgrp             1217 tools/testing/selftests/bpf/test_sockmap.c 			err = test_exec(cgrp, &opt);
cgrp             1227 tools/testing/selftests/bpf/test_sockmap.c static int test_txmsg(int cgrp)
cgrp             1236 tools/testing/selftests/bpf/test_sockmap.c 	err = test_loop(cgrp);
cgrp             1242 tools/testing/selftests/bpf/test_sockmap.c 	err = test_loop(cgrp);
cgrp             1248 tools/testing/selftests/bpf/test_sockmap.c 	err = test_loop(cgrp);
cgrp             1255 tools/testing/selftests/bpf/test_sockmap.c 	err = test_loop(cgrp);
cgrp             1267 tools/testing/selftests/bpf/test_sockmap.c static int test_send(struct sockmap_options *opt, int cgrp)
cgrp             1274 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, opt);
cgrp             1281 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, opt);
cgrp             1288 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, opt);
cgrp             1295 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, opt);
cgrp             1302 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, opt);
cgrp             1309 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, opt);
cgrp             1317 tools/testing/selftests/bpf/test_sockmap.c static int test_mixed(int cgrp)
cgrp             1333 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1341 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1349 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1357 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1365 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1373 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1381 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1389 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1397 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1405 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1413 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1421 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1429 tools/testing/selftests/bpf/test_sockmap.c 	err = test_send(&opt, cgrp);
cgrp             1436 tools/testing/selftests/bpf/test_sockmap.c static int test_start_end(int cgrp)
cgrp             1448 tools/testing/selftests/bpf/test_sockmap.c 	err = test_txmsg(cgrp);
cgrp             1459 tools/testing/selftests/bpf/test_sockmap.c 	err = test_txmsg(cgrp);
cgrp             1477 tools/testing/selftests/bpf/test_sockmap.c 		err = test_exec(cgrp, &opt);
cgrp             1486 tools/testing/selftests/bpf/test_sockmap.c 		err = test_exec(cgrp, &opt);
cgrp             1499 tools/testing/selftests/bpf/test_sockmap.c 		err = test_exec(cgrp, &opt);
cgrp             1509 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);
cgrp             1516 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);
cgrp             1527 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);
cgrp             1534 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);
cgrp             1543 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);
cgrp             1552 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);
cgrp             1561 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);
cgrp             1568 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);
cgrp             1575 tools/testing/selftests/bpf/test_sockmap.c 	err = test_exec(cgrp, &opt);