Lines Matching refs:cfts

222 			      struct cgroup *cgrp, struct cftype cfts[],
1577 struct cftype *cfts; in css_clear_dir() local
1586 cfts = cgroup_base_files; in css_clear_dir()
1588 cfts = cgroup1_base_files; in css_clear_dir()
1590 cgroup_addrm_files(css, cgrp, cfts, false); in css_clear_dir()
1592 list_for_each_entry(cfts, &css->ss->cfts, node) in css_clear_dir()
1593 cgroup_addrm_files(css, cgrp, cfts, false); in css_clear_dir()
1606 struct cftype *cfts, *failed_cfts; in css_populate_dir() local
1614 cfts = cgroup_base_files; in css_populate_dir()
1616 cfts = cgroup1_base_files; in css_populate_dir()
1618 ret = cgroup_addrm_files(&cgrp->self, cgrp, cfts, true); in css_populate_dir()
1622 list_for_each_entry(cfts, &css->ss->cfts, node) { in css_populate_dir()
1623 ret = cgroup_addrm_files(css, cgrp, cfts, true); in css_populate_dir()
1625 failed_cfts = cfts; in css_populate_dir()
1635 list_for_each_entry(cfts, &css->ss->cfts, node) { in css_populate_dir()
1636 if (cfts == failed_cfts) in css_populate_dir()
1638 cgroup_addrm_files(css, cgrp, cfts, false); in css_populate_dir()
3607 struct cgroup *cgrp, struct cftype cfts[], in cgroup_addrm_files() argument
3616 for (cft = cfts; cft != cft_end && cft->name[0] != '\0'; cft++) { in cgroup_addrm_files()
3643 static int cgroup_apply_cftypes(struct cftype *cfts, bool is_add) in cgroup_apply_cftypes() argument
3645 struct cgroup_subsys *ss = cfts[0].ss; in cgroup_apply_cftypes()
3659 ret = cgroup_addrm_files(css, cgrp, cfts, is_add); in cgroup_apply_cftypes()
3669 static void cgroup_exit_cftypes(struct cftype *cfts) in cgroup_exit_cftypes() argument
3673 for (cft = cfts; cft->name[0] != '\0'; cft++) { in cgroup_exit_cftypes()
3685 static int cgroup_init_cftypes(struct cgroup_subsys *ss, struct cftype *cfts) in cgroup_init_cftypes() argument
3689 for (cft = cfts; cft->name[0] != '\0'; cft++) { in cgroup_init_cftypes()
3706 cgroup_exit_cftypes(cfts); in cgroup_init_cftypes()
3719 static int cgroup_rm_cftypes_locked(struct cftype *cfts) in cgroup_rm_cftypes_locked() argument
3723 if (!cfts || !cfts[0].ss) in cgroup_rm_cftypes_locked()
3726 list_del(&cfts->node); in cgroup_rm_cftypes_locked()
3727 cgroup_apply_cftypes(cfts, false); in cgroup_rm_cftypes_locked()
3728 cgroup_exit_cftypes(cfts); in cgroup_rm_cftypes_locked()
3743 int cgroup_rm_cftypes(struct cftype *cfts) in cgroup_rm_cftypes() argument
3748 ret = cgroup_rm_cftypes_locked(cfts); in cgroup_rm_cftypes()
3767 static int cgroup_add_cftypes(struct cgroup_subsys *ss, struct cftype *cfts) in cgroup_add_cftypes() argument
3774 if (!cfts || cfts[0].name[0] == '\0') in cgroup_add_cftypes()
3777 ret = cgroup_init_cftypes(ss, cfts); in cgroup_add_cftypes()
3783 list_add_tail(&cfts->node, &ss->cfts); in cgroup_add_cftypes()
3784 ret = cgroup_apply_cftypes(cfts, true); in cgroup_add_cftypes()
3786 cgroup_rm_cftypes_locked(cfts); in cgroup_add_cftypes()
3800 int cgroup_add_dfl_cftypes(struct cgroup_subsys *ss, struct cftype *cfts) in cgroup_add_dfl_cftypes() argument
3804 for (cft = cfts; cft && cft->name[0] != '\0'; cft++) in cgroup_add_dfl_cftypes()
3806 return cgroup_add_cftypes(ss, cfts); in cgroup_add_dfl_cftypes()
3817 int cgroup_add_legacy_cftypes(struct cgroup_subsys *ss, struct cftype *cfts) in cgroup_add_legacy_cftypes() argument
3821 for (cft = cfts; cft && cft->name[0] != '\0'; cft++) in cgroup_add_legacy_cftypes()
3823 return cgroup_add_cftypes(ss, cfts); in cgroup_add_legacy_cftypes()
5204 INIT_LIST_HEAD(&ss->cfts); in cgroup_init_subsys()