Lines Matching refs:cgroup
190 static int cgroup_destroy_locked(struct cgroup *cgrp);
191 static int create_css(struct cgroup *cgrp, struct cgroup_subsys *ss,
195 static int cgroup_addrm_files(struct cgroup *cgrp, struct cftype cfts[],
229 static struct cgroup *cgroup_parent(struct cgroup *cgrp) in cgroup_parent()
234 return container_of(parent_css, struct cgroup, self); in cgroup_parent()
249 static struct cgroup_subsys_state *cgroup_css(struct cgroup *cgrp, in cgroup_css()
269 static struct cgroup_subsys_state *cgroup_e_css(struct cgroup *cgrp, in cgroup_e_css()
302 struct cgroup_subsys_state *cgroup_get_e_css(struct cgroup *cgrp, in cgroup_get_e_css()
325 static inline bool cgroup_is_dead(const struct cgroup *cgrp) in cgroup_is_dead()
332 struct cgroup *cgrp = of->kn->parent->priv; in of_css()
359 bool cgroup_is_descendant(struct cgroup *cgrp, struct cgroup *ancestor) in cgroup_is_descendant()
369 static int notify_on_release(const struct cgroup *cgrp) in notify_on_release()
425 static void check_for_release(struct cgroup *cgrp);
437 struct cgroup *cgrp;
481 static void cgroup_update_populated(struct cgroup *cgrp, bool populated) in cgroup_update_populated()
541 struct cgroup *cgrp = link->cgrp; in put_css_set_locked()
593 struct cgroup *new_cgrp, in compare_css_sets()
616 struct cgroup *cgrp1, *cgrp2; in compare_css_sets()
660 struct cgroup *cgrp, in find_existing_css_set()
746 struct cgroup *cgrp) in link_css_set()
779 struct cgroup *cgrp) in find_css_set()
827 struct cgroup *c = link->cgrp; in find_css_set()
844 &cset->subsys[ssid]->cgroup->e_csets[ssid]); in find_css_set()
853 struct cgroup *root_cgrp = kf_root->kn->priv; in cgroup_root_from_kf()
895 struct cgroup *cgrp = &root->cgrp; in cgroup_destroy_root()
933 static struct cgroup *cset_cgroup_from_root(struct css_set *cset, in cset_cgroup_from_root()
936 struct cgroup *res = NULL; in cset_cgroup_from_root()
947 struct cgroup *c = link->cgrp; in cset_cgroup_from_root()
964 static struct cgroup *task_cgroup_from_root(struct task_struct *task, in task_cgroup_from_root()
1001 static int cgroup_populate_dir(struct cgroup *cgrp, unsigned int subsys_mask);
1005 static char *cgroup_file_name(struct cgroup *cgrp, const struct cftype *cft, in cgroup_file_name()
1042 static void cgroup_get(struct cgroup *cgrp) in cgroup_get()
1048 static bool cgroup_tryget(struct cgroup *cgrp) in cgroup_tryget()
1053 static void cgroup_put(struct cgroup *cgrp) in cgroup_put()
1071 static unsigned int cgroup_calc_child_subsys_mask(struct cgroup *cgrp, in cgroup_calc_child_subsys_mask()
1074 struct cgroup *parent = cgroup_parent(cgrp); in cgroup_calc_child_subsys_mask()
1116 static void cgroup_refresh_child_subsys_mask(struct cgroup *cgrp) in cgroup_refresh_child_subsys_mask()
1134 struct cgroup *cgrp; in cgroup_kn_unlock()
1162 static struct cgroup *cgroup_kn_lock_live(struct kernfs_node *kn) in cgroup_kn_lock_live()
1164 struct cgroup *cgrp; in cgroup_kn_lock_live()
1190 static void cgroup_rm_file(struct cgroup *cgrp, const struct cftype *cft) in cgroup_rm_file()
1203 static void cgroup_clear_dir(struct cgroup *cgrp, unsigned int subsys_mask) in cgroup_clear_dir()
1286 css->cgroup = &dst_root->cgrp; in rebind_subsystems()
1605 static void init_cgroup_housekeeping(struct cgroup *cgrp) in init_cgroup_housekeeping()
1615 cgrp->self.cgroup = cgrp; in init_cgroup_housekeeping()
1628 struct cgroup *cgrp = &root->cgrp; in init_cgroup_root()
1648 struct cgroup *root_cgrp = &root->cgrp; in cgroup_setup_root()
1944 struct cgroup *cgrp; in task_cgroup_path()
2044 static void cgroup_task_migrate(struct cgroup *old_cgrp, in cgroup_task_migrate()
2119 struct cgroup *dst_cgrp, in cgroup_migrate_add_src()
2122 struct cgroup *src_cgrp; in cgroup_migrate_add_src()
2157 static int cgroup_migrate_prepare_dst(struct cgroup *dst_cgrp, in cgroup_migrate_prepare_dst()
2230 static int cgroup_migrate(struct cgroup *cgrp, struct task_struct *leader, in cgroup_migrate()
2349 static int cgroup_attach_task(struct cgroup *dst_cgrp, in cgroup_attach_task()
2388 struct cgroup *cgrp; in __cgroup_procs_write()
2478 struct cgroup *from_cgrp; in cgroup_attach_task_all()
2512 struct cgroup *cgrp; in cgroup_release_agent_write()
2529 struct cgroup *cgrp = seq_css(seq)->cgroup; in cgroup_release_agent_show()
2565 struct cgroup *cgrp = seq_css(seq)->cgroup; in cgroup_root_controllers_show()
2575 struct cgroup *cgrp = seq_css(seq)->cgroup; in cgroup_controllers_show()
2584 struct cgroup *cgrp = seq_css(seq)->cgroup; in cgroup_subtree_control_show()
2599 static int cgroup_update_dfl_csses(struct cgroup *cgrp) in cgroup_update_dfl_csses()
2614 if (css->cgroup == cgrp) in cgroup_update_dfl_csses()
2617 list_for_each_entry(link, &css->cgroup->cset_links, cset_link) in cgroup_update_dfl_csses()
2693 struct cgroup *cgrp, *child; in cgroup_subtree_control_write()
2924 seq_printf(seq, "%d\n", (bool)seq_css(seq)->cgroup->populated_cnt); in cgroup_populated_show()
2931 struct cgroup *cgrp = of->kn->parent->priv; in cgroup_file_write()
3019 struct cgroup *cgrp = kn->priv; in cgroup_rename()
3067 static int cgroup_add_file(struct cgroup *cgrp, struct cftype *cft) in cgroup_add_file()
3105 static int cgroup_addrm_files(struct cgroup *cgrp, struct cftype cfts[], in cgroup_addrm_files()
3142 struct cgroup *root = &ss->root->cgrp; in cgroup_apply_cftypes()
3150 struct cgroup *cgrp = css->cgroup; in cgroup_apply_cftypes()
3337 static int cgroup_task_count(const struct cgroup *cgrp) in cgroup_task_count()
3642 it->cset_pos = &css->cgroup->e_csets[css->ss->id]; in css_task_iter_start()
3644 it->cset_pos = &css->cgroup->cset_links; in css_task_iter_start()
3710 int cgroup_transfer_tasks(struct cgroup *to, struct cgroup *from) in cgroup_transfer_tasks()
3787 struct cgroup *owner;
3815 static void cgroup_pidlist_destroy_all(struct cgroup *cgrp) in cgroup_pidlist_destroy_all()
3908 static pid_t cgroup_pid_fry(struct cgroup *cgrp, pid_t pid) in cgroup_pid_fry()
3926 static struct cgroup_pidlist *cgroup_pidlist_find(struct cgroup *cgrp, in cgroup_pidlist_find()
3947 static struct cgroup_pidlist *cgroup_pidlist_find_create(struct cgroup *cgrp, in cgroup_pidlist_find_create()
3975 static int pidlist_array_load(struct cgroup *cgrp, enum cgroup_filetype type, in pidlist_array_load()
4046 struct cgroup *cgrp; in cgroupstats_build()
4114 struct cgroup *cgrp = seq_css(s)->cgroup; in cgroup_pidlist_start()
4174 mutex_unlock(&seq_css(s)->cgroup->pidlist_mutex); in cgroup_pidlist_stop()
4191 *pos = cgroup_pid_fry(seq_css(s)->cgroup, *p); in cgroup_pidlist_next()
4206 return notify_on_release(css->cgroup); in cgroup_read_notify_on_release()
4213 set_bit(CGRP_NOTIFY_ON_RELEASE, &css->cgroup->flags); in cgroup_write_notify_on_release()
4215 clear_bit(CGRP_NOTIFY_ON_RELEASE, &css->cgroup->flags); in cgroup_write_notify_on_release()
4222 return test_bit(CGRP_CPUSET_CLONE_CHILDREN, &css->cgroup->flags); in cgroup_clone_children_read()
4229 set_bit(CGRP_CPUSET_CLONE_CHILDREN, &css->cgroup->flags); in cgroup_clone_children_write()
4231 clear_bit(CGRP_CPUSET_CLONE_CHILDREN, &css->cgroup->flags); in cgroup_clone_children_write()
4324 static int cgroup_populate_dir(struct cgroup *cgrp, unsigned int subsys_mask) in cgroup_populate_dir()
4375 struct cgroup *cgrp = css->cgroup; in css_free_work_fn()
4430 struct cgroup *cgrp = css->cgroup; in css_release_work_fn()
4472 struct cgroup_subsys *ss, struct cgroup *cgrp) in init_and_link_css()
4479 css->cgroup = cgrp; in init_and_link_css()
4506 rcu_assign_pointer(css->cgroup->subsys[ss->id], css); in online_css()
4529 RCU_INIT_POINTER(css->cgroup->subsys[ss->id], NULL); in offline_css()
4531 wake_up_all(&css->cgroup->offline_waitq); in offline_css()
4544 static int create_css(struct cgroup *cgrp, struct cgroup_subsys *ss, in create_css()
4547 struct cgroup *parent = cgroup_parent(cgrp); in create_css()
4596 cgroup_clear_dir(css->cgroup, 1 << css->ss->id); in create_css()
4609 struct cgroup *parent, *cgrp; in cgroup_mkdir()
4788 cgroup_clear_dir(css->cgroup, 1 << css->ss->id); in kill_css()
4833 static int cgroup_destroy_locked(struct cgroup *cgrp) in cgroup_destroy_locked()
4886 struct cgroup *cgrp; in cgroup_rmdir()
5119 struct cgroup *cgrp; in proc_cgroup_show()
5319 static void check_for_release(struct cgroup *cgrp) in check_for_release()
5351 struct cgroup *cgrp = in cgroup_release_agent()
5352 container_of(work, struct cgroup, release_agent_work); in cgroup_release_agent()
5431 struct cgroup *cgrp; in css_tryget_online_from_dir()
5490 return cgroup_task_count(css->cgroup); in debug_taskcount_read()
5524 struct cgroup *c = link->cgrp; in current_css_set_cg_links_read()
5543 list_for_each_entry(link, &css->cgroup->cset_links, cset_link) { in cgroup_css_links_read()
5571 return (!cgroup_has_tasks(css->cgroup) && in releasable_read()
5572 !css_has_online_children(&css->cgroup->self)); in releasable_read()