Lines Matching refs:kn

189 static int rdtgroup_kn_set_ugid(struct kernfs_node *kn)  in rdtgroup_kn_set_ugid()  argument
199 return kernfs_setattr(kn, &iattr); in rdtgroup_kn_set_ugid()
204 struct kernfs_node *kn; in rdtgroup_add_file() local
207 kn = __kernfs_create_file(parent_kn, rft->name, rft->mode, in rdtgroup_add_file()
210 if (IS_ERR(kn)) in rdtgroup_add_file()
211 return PTR_ERR(kn); in rdtgroup_add_file()
213 ret = rdtgroup_kn_set_ugid(kn); in rdtgroup_add_file()
215 kernfs_remove(kn); in rdtgroup_add_file()
225 struct rftype *rft = of->kn->priv; in rdtgroup_seqfile_show()
235 struct rftype *rft = of->kn->priv; in rdtgroup_file_write()
256 struct rftype *rft = of->kn->priv; in is_cpu_list()
268 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_cpus_show()
289 rdtgroup_kn_unlock(of->kn); in rdtgroup_cpus_show()
463 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_cpus_write()
502 rdtgroup_kn_unlock(of->kn); in rdtgroup_cpus_write()
524 kernfs_put(rdtgrp->kn); in rdtgroup_remove()
710 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_tasks_write()
712 rdtgroup_kn_unlock(of->kn); in rdtgroup_tasks_write()
727 rdtgroup_kn_unlock(of->kn); in rdtgroup_tasks_write()
750 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_tasks_show()
755 rdtgroup_kn_unlock(of->kn); in rdtgroup_tasks_show()
822 rdtg->kn->name); in proc_resctrl_show()
828 seq_printf(s, "%s", crg->kn->name); in proc_resctrl_show()
864 struct rdt_resource *r = of->kn->parent->priv; in rdt_num_closids_show()
873 struct rdt_resource *r = of->kn->parent->priv; in rdt_default_ctrl_show()
882 struct rdt_resource *r = of->kn->parent->priv; in rdt_min_cbm_bits_show()
891 struct rdt_resource *r = of->kn->parent->priv; in rdt_shareable_bits_show()
914 struct rdt_resource *r = of->kn->parent->priv; in rdt_bit_usage_show()
992 struct rdt_resource *r = of->kn->parent->priv; in rdt_min_bw_show()
1001 struct rdt_resource *r = of->kn->parent->priv; in rdt_num_rmids_show()
1011 struct rdt_resource *r = of->kn->parent->priv; in rdt_mon_features_show()
1023 struct rdt_resource *r = of->kn->parent->priv; in rdt_bw_gran_show()
1032 struct rdt_resource *r = of->kn->parent->priv; in rdt_delay_linear_show()
1041 struct rdt_resource *r = of->kn->parent->priv; in max_threshold_occ_show()
1051 struct rdt_resource *r = of->kn->parent->priv; in rdt_thread_throttle_mode_show()
1064 struct rdt_resource *r = of->kn->parent->priv; in max_threshold_occ_write()
1088 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_mode_show()
1090 rdtgroup_kn_unlock(of->kn); in rdtgroup_mode_show()
1096 rdtgroup_kn_unlock(of->kn); in rdtgroup_mode_show()
1319 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_mode_write()
1321 rdtgroup_kn_unlock(of->kn); in rdtgroup_mode_write()
1371 rdtgroup_kn_unlock(of->kn); in rdtgroup_mode_write()
1427 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_size_show()
1429 rdtgroup_kn_unlock(of->kn); in rdtgroup_size_show()
1473 rdtgroup_kn_unlock(of->kn); in rdtgroup_size_show()
1627 static int rdtgroup_add_files(struct kernfs_node *kn, unsigned long fflags) in rdtgroup_add_files() argument
1639 ret = rdtgroup_add_file(kn, rft); in rdtgroup_add_files()
1650 kernfs_remove_by_name(kn, rft->name); in rdtgroup_add_files()
1702 struct kernfs_node *kn; in rdtgroup_kn_mode_restrict() local
1705 kn = kernfs_find_and_get_ns(r->kn, name, NULL); in rdtgroup_kn_mode_restrict()
1706 if (!kn) in rdtgroup_kn_mode_restrict()
1709 switch (kernfs_type(kn)) { in rdtgroup_kn_mode_restrict()
1721 ret = kernfs_setattr(kn, &iattr); in rdtgroup_kn_mode_restrict()
1722 kernfs_put(kn); in rdtgroup_kn_mode_restrict()
1741 struct kernfs_node *kn, *parent; in rdtgroup_kn_mode_restore() local
1753 kn = kernfs_find_and_get_ns(r->kn, name, NULL); in rdtgroup_kn_mode_restore()
1754 if (!kn) in rdtgroup_kn_mode_restore()
1757 switch (kernfs_type(kn)) { in rdtgroup_kn_mode_restore()
1759 parent = kernfs_get_parent(kn); in rdtgroup_kn_mode_restore()
1774 ret = kernfs_setattr(kn, &iattr); in rdtgroup_kn_mode_restore()
1775 kernfs_put(kn); in rdtgroup_kn_mode_restore()
1849 struct kernfs_node *kn; in mongroup_create_dir() local
1853 kn = kernfs_create_dir(parent_kn, name, parent_kn->mode, prgrp); in mongroup_create_dir()
1854 if (IS_ERR(kn)) in mongroup_create_dir()
1855 return PTR_ERR(kn); in mongroup_create_dir()
1858 *dest_kn = kn; in mongroup_create_dir()
1860 ret = rdtgroup_kn_set_ugid(kn); in mongroup_create_dir()
1864 kernfs_activate(kn); in mongroup_create_dir()
1869 kernfs_remove(kn); in mongroup_create_dir()
2039 static struct rdtgroup *kernfs_to_rdtgroup(struct kernfs_node *kn) in kernfs_to_rdtgroup() argument
2041 if (kernfs_type(kn) == KERNFS_DIR) { in kernfs_to_rdtgroup()
2048 if (kn == kn_info || kn->parent == kn_info) in kernfs_to_rdtgroup()
2051 return kn->priv; in kernfs_to_rdtgroup()
2053 return kn->parent->priv; in kernfs_to_rdtgroup()
2057 struct rdtgroup *rdtgroup_kn_lock_live(struct kernfs_node *kn) in rdtgroup_kn_lock_live() argument
2059 struct rdtgroup *rdtgrp = kernfs_to_rdtgroup(kn); in rdtgroup_kn_lock_live()
2065 kernfs_break_active_protection(kn); in rdtgroup_kn_lock_live()
2076 void rdtgroup_kn_unlock(struct kernfs_node *kn) in rdtgroup_kn_unlock() argument
2078 struct rdtgroup *rdtgrp = kernfs_to_rdtgroup(kn); in rdtgroup_kn_unlock()
2090 kernfs_unbreak_active_protection(kn); in rdtgroup_kn_unlock()
2093 kernfs_unbreak_active_protection(kn); in rdtgroup_kn_unlock()
2140 ret = rdtgroup_create_info_dir(rdtgroup_default.kn); in rdt_get_tree()
2145 ret = mongroup_create_dir(rdtgroup_default.kn, in rdt_get_tree()
2151 ret = mkdir_mondata_all(rdtgroup_default.kn, in rdt_get_tree()
2402 kernfs_remove(rdtgrp->kn); in rmdir_all_sub()
2452 struct kernfs_node *kn; in mon_addfile() local
2455 kn = __kernfs_create_file(parent_kn, name, 0444, in mon_addfile()
2458 if (IS_ERR(kn)) in mon_addfile()
2459 return PTR_ERR(kn); in mon_addfile()
2461 ret = rdtgroup_kn_set_ugid(kn); in mon_addfile()
2463 kernfs_remove(kn); in mon_addfile()
2496 struct kernfs_node *kn; in mkdir_mondata_subdir() local
2504 kn = kernfs_create_dir(parent_kn, name, parent_kn->mode, prgrp); in mkdir_mondata_subdir()
2505 if (IS_ERR(kn)) in mkdir_mondata_subdir()
2506 return PTR_ERR(kn); in mkdir_mondata_subdir()
2508 ret = rdtgroup_kn_set_ugid(kn); in mkdir_mondata_subdir()
2521 ret = mon_addfile(kn, mevt->name, priv.priv); in mkdir_mondata_subdir()
2528 kernfs_activate(kn); in mkdir_mondata_subdir()
2532 kernfs_remove(kn); in mkdir_mondata_subdir()
2600 struct kernfs_node *kn; in mkdir_mondata_all() local
2606 ret = mongroup_create_dir(parent_kn, prgrp, "mon_data", &kn); in mkdir_mondata_all()
2611 *dest_kn = kn; in mkdir_mondata_all()
2618 ret = mkdir_mondata_subdir_alldom(kn, r, prgrp); in mkdir_mondata_all()
2626 kernfs_remove(kn); in mkdir_mondata_all()
2800 struct kernfs_node *kn; in mkdir_rdt_prepare() local
2831 kn = kernfs_create_dir(parent_kn, name, mode, rdtgrp); in mkdir_rdt_prepare()
2832 if (IS_ERR(kn)) { in mkdir_rdt_prepare()
2833 ret = PTR_ERR(kn); in mkdir_rdt_prepare()
2837 rdtgrp->kn = kn; in mkdir_rdt_prepare()
2845 kernfs_get(kn); in mkdir_rdt_prepare()
2847 ret = rdtgroup_kn_set_ugid(kn); in mkdir_rdt_prepare()
2854 ret = rdtgroup_add_files(kn, files); in mkdir_rdt_prepare()
2868 ret = mkdir_mondata_all(kn, rdtgrp, &rdtgrp->mon.mon_data_kn); in mkdir_rdt_prepare()
2874 kernfs_activate(kn); in mkdir_rdt_prepare()
2884 kernfs_put(rdtgrp->kn); in mkdir_rdt_prepare()
2885 kernfs_remove(rdtgrp->kn); in mkdir_rdt_prepare()
2895 kernfs_remove(rgrp->kn); in mkdir_rdt_prepare_clean()
2936 struct kernfs_node *kn; in rdtgroup_mkdir_ctrl_mon() local
2944 kn = rdtgrp->kn; in rdtgroup_mkdir_ctrl_mon()
2965 ret = mongroup_create_dir(kn, rdtgrp, "mon_groups", NULL); in rdtgroup_mkdir_ctrl_mon()
2995 static bool is_mon_groups(struct kernfs_node *kn, const char *name) in is_mon_groups() argument
2997 return (!strcmp(kn->name, "mon_groups") && in is_mon_groups()
3013 if (rdt_alloc_capable && parent_kn == rdtgroup_default.kn) in rdtgroup_mkdir()
3026 static int rdtgroup_rmdir_mon(struct kernfs_node *kn, struct rdtgroup *rdtgrp, in rdtgroup_rmdir_mon() argument
3054 kernfs_remove(rdtgrp->kn); in rdtgroup_rmdir_mon()
3059 static int rdtgroup_ctrl_remove(struct kernfs_node *kn, in rdtgroup_ctrl_remove() argument
3065 kernfs_remove(rdtgrp->kn); in rdtgroup_ctrl_remove()
3069 static int rdtgroup_rmdir_ctrl(struct kernfs_node *kn, struct rdtgroup *rdtgrp, in rdtgroup_rmdir_ctrl() argument
3097 rdtgroup_ctrl_remove(kn, rdtgrp); in rdtgroup_rmdir_ctrl()
3107 static int rdtgroup_rmdir(struct kernfs_node *kn) in rdtgroup_rmdir() argument
3109 struct kernfs_node *parent_kn = kn->parent; in rdtgroup_rmdir()
3117 rdtgrp = rdtgroup_kn_lock_live(kn); in rdtgroup_rmdir()
3130 if (rdtgrp->type == RDTCTRL_GROUP && parent_kn == rdtgroup_default.kn && in rdtgroup_rmdir()
3134 ret = rdtgroup_ctrl_remove(kn, rdtgrp); in rdtgroup_rmdir()
3136 ret = rdtgroup_rmdir_ctrl(kn, rdtgrp, tmpmask); in rdtgroup_rmdir()
3139 is_mon_groups(parent_kn, kn->name)) { in rdtgroup_rmdir()
3140 ret = rdtgroup_rmdir_mon(kn, rdtgrp, tmpmask); in rdtgroup_rmdir()
3146 rdtgroup_kn_unlock(kn); in rdtgroup_rmdir()
3191 ret = rdtgroup_add_files(rdt_root->kn, RF_CTRL_BASE); in rdtgroup_setup_root()
3197 rdtgroup_default.kn = rdt_root->kn; in rdtgroup_setup_root()
3198 kernfs_activate(rdtgroup_default.kn); in rdtgroup_setup_root()