Lines Matching refs:kn

675 static struct cgroup *kn_priv(struct kernfs_node *kn)  in kn_priv()  argument
683 parent = rcu_dereference_check(kn->__parent, in kn_priv()
684 kernfs_root_flags(kn) & KERNFS_ROOT_INVARIANT_PARENT); in kn_priv()
690 struct cgroup *cgrp = kn_priv(of->kn); in of_css()
1681 void cgroup_kn_unlock(struct kernfs_node *kn) in cgroup_kn_unlock() argument
1685 if (kernfs_type(kn) == KERNFS_DIR) in cgroup_kn_unlock()
1686 cgrp = kn->priv; in cgroup_kn_unlock()
1688 cgrp = kn_priv(kn); in cgroup_kn_unlock()
1692 kernfs_unbreak_active_protection(kn); in cgroup_kn_unlock()
1713 struct cgroup *cgroup_kn_lock_live(struct kernfs_node *kn, bool drain_offline) in cgroup_kn_lock_live() argument
1717 if (kernfs_type(kn) == KERNFS_DIR) in cgroup_kn_lock_live()
1718 cgrp = kn->priv; in cgroup_kn_lock_live()
1720 cgrp = kn_priv(kn); in cgroup_kn_lock_live()
1730 kernfs_break_active_protection(kn); in cgroup_kn_lock_live()
1740 cgroup_kn_unlock(kn); in cgroup_kn_lock_live()
1755 cfile->kn = NULL; in cgroup_rm_file()
1761 kernfs_remove_by_name(cgrp->kn, cgroup_file_name(cgrp, cft, name)); in cgroup_rm_file()
1957 kernfs_activate(dcgrp->kn); in rebind_subsystems()
1975 len = kernfs_path_from_node(kf_node, ns_cgroup->kn, buf, PATH_MAX); in cgroup_show_path()
2198 root_cgrp->kn = kernfs_root_to_node(root->kf_root); in cgroup_setup_root()
2289 nsdentry = kernfs_node_dentry(cgrp->kn, sb); in cgroup_do_get_tree()
2489 return kernfs_path_from_node(cgrp->kn, root->kn, buf, buflen); in cgroup_path_ns_locked()
3581 cgrp = cgroup_kn_lock_live(of->kn, true); in cgroup_subtree_control_write()
3632 kernfs_activate(cgrp->kn); in cgroup_subtree_control_write()
3634 cgroup_kn_unlock(of->kn); in cgroup_subtree_control_write()
3721 cgrp = cgroup_kn_lock_live(of->kn, true); in cgroup_type_write()
3728 cgroup_kn_unlock(of->kn); in cgroup_type_write()
3764 cgrp = cgroup_kn_lock_live(of->kn, false); in cgroup_max_descendants_write()
3770 cgroup_kn_unlock(of->kn); in cgroup_max_descendants_write()
3807 cgrp = cgroup_kn_lock_live(of->kn, false); in cgroup_max_depth_write()
3813 cgroup_kn_unlock(of->kn); in cgroup_max_depth_write()
4004 cgrp = cgroup_kn_lock_live(of->kn, false); in pressure_write()
4009 cgroup_kn_unlock(of->kn); in pressure_write()
4094 cgrp = cgroup_kn_lock_live(of->kn, false); in cgroup_pressure_write()
4111 cgroup_kn_unlock(of->kn); in cgroup_pressure_write()
4170 cgrp = cgroup_kn_lock_live(of->kn, false); in cgroup_freeze_write()
4176 cgroup_kn_unlock(of->kn); in cgroup_freeze_write()
4232 cgrp = cgroup_kn_lock_live(of->kn, false); in cgroup_kill_write()
4246 cgroup_kn_unlock(of->kn); in cgroup_kill_write()
4292 struct cgroup *cgrp = kn_priv(of->kn); in cgroup_file_write()
4415 struct kernfs_node *kn; in cgroup_add_file() local
4421 kn = __kernfs_create_file(cgrp->kn, cgroup_file_name(cgrp, cft, name), in cgroup_add_file()
4426 if (IS_ERR(kn)) in cgroup_add_file()
4427 return PTR_ERR(kn); in cgroup_add_file()
4435 cfile->kn = kn; in cgroup_add_file()
4512 kernfs_activate(root->kn); in cgroup_apply_cftypes()
4694 if (cfile->kn) { in cgroup_file_notify()
4701 kernfs_notify(cfile->kn); in cgroup_file_notify()
4716 struct kernfs_node *kn; in cgroup_file_show() local
4719 kn = cfile->kn; in cgroup_file_show()
4720 kernfs_get(kn); in cgroup_file_show()
4723 if (kn) in cgroup_file_show()
4724 kernfs_show(kn, show); in cgroup_file_show()
4726 kernfs_put(kn); in cgroup_file_show()
5300 inode = kernfs_get_inode(sb, cgrp->procs_file.kn); in cgroup_may_write()
5370 dst_cgrp = cgroup_kn_lock_live(of->kn, false); in __cgroup_procs_write()
5401 cgroup_kn_unlock(of->kn); in __cgroup_procs_write()
5611 kernfs_put(cgrp->kn); in css_free_rwork_fn()
5681 if (cgrp->kn) in css_release_work_fn()
5682 RCU_INIT_POINTER(*(void __rcu __force **)&cgrp->kn->priv, in css_release_work_fn()
5845 struct kernfs_node *kn; in cgroup_create() local
5859 kn = kernfs_create_dir_ns(parent->kn, name, mode, in cgroup_create()
5862 if (IS_ERR(kn)) { in cgroup_create()
5863 ret = PTR_ERR(kn); in cgroup_create()
5866 cgrp->kn = kn; in cgroup_create()
5958 kernfs_remove(cgrp->kn); in cgroup_create()
6017 kernfs_get(cgrp->kn); in cgroup_mkdir()
6030 kernfs_activate(cgrp->kn); in cgroup_mkdir()
6193 kernfs_remove(cgrp->kn); in cgroup_destroy_locked()
6223 int cgroup_rmdir(struct kernfs_node *kn) in cgroup_rmdir() argument
6228 cgrp = cgroup_kn_lock_live(kn, false); in cgroup_rmdir()
6236 cgroup_kn_unlock(kn); in cgroup_rmdir()
6474 struct kernfs_node *kn; in cgroup_path_from_kernfs_id() local
6476 kn = kernfs_find_and_get_node_by_id(cgrp_dfl_root.kf_root, id); in cgroup_path_from_kernfs_id()
6477 if (!kn) in cgroup_path_from_kernfs_id()
6479 kernfs_path(kn, buf, buflen); in cgroup_path_from_kernfs_id()
6480 kernfs_put(kn); in cgroup_path_from_kernfs_id()
6491 struct kernfs_node *kn; in __cgroup_get_from_id() local
6494 kn = kernfs_find_and_get_node_by_id(cgrp_dfl_root.kf_root, id); in __cgroup_get_from_id()
6495 if (!kn) in __cgroup_get_from_id()
6498 if (kernfs_type(kn) != KERNFS_DIR) { in __cgroup_get_from_id()
6499 kernfs_put(kn); in __cgroup_get_from_id()
6505 cgrp = rcu_dereference(*(void __rcu __force **)&kn->priv); in __cgroup_get_from_id()
6510 kernfs_put(kn); in __cgroup_get_from_id()
7154 struct kernfs_node *kn = kernfs_node_from_dentry(dentry); in css_tryget_online_from_dir() local
7161 !kn || kernfs_type(kn) != KERNFS_DIR) in css_tryget_online_from_dir()
7171 cgrp = rcu_dereference(*(void __rcu __force **)&kn->priv); in css_tryget_online_from_dir()
7207 struct kernfs_node *kn; in cgroup_get_from_path() local
7212 kn = kernfs_walk_and_get(root_cgrp->kn, path); in cgroup_get_from_path()
7213 if (!kn) in cgroup_get_from_path()
7216 if (kernfs_type(kn) != KERNFS_DIR) { in cgroup_get_from_path()
7223 cgrp = rcu_dereference(*(void __rcu __force **)&kn->priv); in cgroup_get_from_path()
7230 kernfs_put(kn); in cgroup_get_from_path()