Lines Matching refs:kn

192 static int rdtgroup_kn_set_ugid(struct kernfs_node *kn)  in rdtgroup_kn_set_ugid()  argument
202 return kernfs_setattr(kn, &iattr); in rdtgroup_kn_set_ugid()
207 struct kernfs_node *kn; in rdtgroup_add_file() local
210 kn = __kernfs_create_file(parent_kn, rft->name, rft->mode, in rdtgroup_add_file()
213 if (IS_ERR(kn)) in rdtgroup_add_file()
214 return PTR_ERR(kn); in rdtgroup_add_file()
216 ret = rdtgroup_kn_set_ugid(kn); in rdtgroup_add_file()
218 kernfs_remove(kn); in rdtgroup_add_file()
228 struct rftype *rft = of->kn->priv; in rdtgroup_seqfile_show()
238 struct rftype *rft = of->kn->priv; in rdtgroup_file_write()
259 struct rftype *rft = of->kn->priv; in is_cpu_list()
271 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_cpus_show()
292 rdtgroup_kn_unlock(of->kn); in rdtgroup_cpus_show()
466 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_cpus_write()
505 rdtgroup_kn_unlock(of->kn); in rdtgroup_cpus_write()
527 kernfs_put(rdtgrp->kn); in rdtgroup_remove()
694 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_tasks_write()
696 rdtgroup_kn_unlock(of->kn); in rdtgroup_tasks_write()
711 rdtgroup_kn_unlock(of->kn); in rdtgroup_tasks_write()
734 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_tasks_show()
739 rdtgroup_kn_unlock(of->kn); in rdtgroup_tasks_show()
806 rdtg->kn->name); in proc_resctrl_show()
812 seq_printf(s, "%s", crg->kn->name); in proc_resctrl_show()
848 struct resctrl_schema *s = of->kn->parent->priv; in rdt_num_closids_show()
857 struct resctrl_schema *s = of->kn->parent->priv; in rdt_default_ctrl_show()
867 struct resctrl_schema *s = of->kn->parent->priv; in rdt_min_cbm_bits_show()
877 struct resctrl_schema *s = of->kn->parent->priv; in rdt_shareable_bits_show()
901 struct resctrl_schema *s = of->kn->parent->priv; in rdt_bit_usage_show()
981 struct resctrl_schema *s = of->kn->parent->priv; in rdt_min_bw_show()
991 struct rdt_resource *r = of->kn->parent->priv; in rdt_num_rmids_show()
1001 struct rdt_resource *r = of->kn->parent->priv; in rdt_mon_features_show()
1013 struct resctrl_schema *s = of->kn->parent->priv; in rdt_bw_gran_show()
1023 struct resctrl_schema *s = of->kn->parent->priv; in rdt_delay_linear_show()
1033 struct rdt_resource *r = of->kn->parent->priv; in max_threshold_occ_show()
1044 struct resctrl_schema *s = of->kn->parent->priv; in rdt_thread_throttle_mode_show()
1069 hw_res = resctrl_to_arch_res(of->kn->parent->priv); in max_threshold_occ_write()
1083 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_mode_show()
1085 rdtgroup_kn_unlock(of->kn); in rdtgroup_mode_show()
1091 rdtgroup_kn_unlock(of->kn); in rdtgroup_mode_show()
1258 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_mode_write()
1260 rdtgroup_kn_unlock(of->kn); in rdtgroup_mode_write()
1310 rdtgroup_kn_unlock(of->kn); in rdtgroup_mode_write()
1367 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_size_show()
1369 rdtgroup_kn_unlock(of->kn); in rdtgroup_size_show()
1414 rdtgroup_kn_unlock(of->kn); in rdtgroup_size_show()
1568 static int rdtgroup_add_files(struct kernfs_node *kn, unsigned long fflags) in rdtgroup_add_files() argument
1580 ret = rdtgroup_add_file(kn, rft); in rdtgroup_add_files()
1591 kernfs_remove_by_name(kn, rft->name); in rdtgroup_add_files()
1643 struct kernfs_node *kn; in rdtgroup_kn_mode_restrict() local
1646 kn = kernfs_find_and_get_ns(r->kn, name, NULL); in rdtgroup_kn_mode_restrict()
1647 if (!kn) in rdtgroup_kn_mode_restrict()
1650 switch (kernfs_type(kn)) { in rdtgroup_kn_mode_restrict()
1662 ret = kernfs_setattr(kn, &iattr); in rdtgroup_kn_mode_restrict()
1663 kernfs_put(kn); in rdtgroup_kn_mode_restrict()
1682 struct kernfs_node *kn, *parent; in rdtgroup_kn_mode_restore() local
1694 kn = kernfs_find_and_get_ns(r->kn, name, NULL); in rdtgroup_kn_mode_restore()
1695 if (!kn) in rdtgroup_kn_mode_restore()
1698 switch (kernfs_type(kn)) { in rdtgroup_kn_mode_restore()
1700 parent = kernfs_get_parent(kn); in rdtgroup_kn_mode_restore()
1715 ret = kernfs_setattr(kn, &iattr); in rdtgroup_kn_mode_restore()
1716 kernfs_put(kn); in rdtgroup_kn_mode_restore()
1793 struct kernfs_node *kn; in mongroup_create_dir() local
1797 kn = kernfs_create_dir(parent_kn, name, parent_kn->mode, prgrp); in mongroup_create_dir()
1798 if (IS_ERR(kn)) in mongroup_create_dir()
1799 return PTR_ERR(kn); in mongroup_create_dir()
1802 *dest_kn = kn; in mongroup_create_dir()
1804 ret = rdtgroup_kn_set_ugid(kn); in mongroup_create_dir()
1808 kernfs_activate(kn); in mongroup_create_dir()
1813 kernfs_remove(kn); in mongroup_create_dir()
1973 static struct rdtgroup *kernfs_to_rdtgroup(struct kernfs_node *kn) in kernfs_to_rdtgroup() argument
1975 if (kernfs_type(kn) == KERNFS_DIR) { in kernfs_to_rdtgroup()
1982 if (kn == kn_info || kn->parent == kn_info) in kernfs_to_rdtgroup()
1985 return kn->priv; in kernfs_to_rdtgroup()
1987 return kn->parent->priv; in kernfs_to_rdtgroup()
1991 struct rdtgroup *rdtgroup_kn_lock_live(struct kernfs_node *kn) in rdtgroup_kn_lock_live() argument
1993 struct rdtgroup *rdtgrp = kernfs_to_rdtgroup(kn); in rdtgroup_kn_lock_live()
1999 kernfs_break_active_protection(kn); in rdtgroup_kn_lock_live()
2010 void rdtgroup_kn_unlock(struct kernfs_node *kn) in rdtgroup_kn_unlock() argument
2012 struct rdtgroup *rdtgrp = kernfs_to_rdtgroup(kn); in rdtgroup_kn_unlock()
2024 kernfs_unbreak_active_protection(kn); in rdtgroup_kn_unlock()
2027 kernfs_unbreak_active_protection(kn); in rdtgroup_kn_unlock()
2166 ret = rdtgroup_create_info_dir(rdtgroup_default.kn); in rdt_get_tree()
2171 ret = mongroup_create_dir(rdtgroup_default.kn, in rdt_get_tree()
2177 ret = mkdir_mondata_all(rdtgroup_default.kn, in rdt_get_tree()
2429 kernfs_remove(rdtgrp->kn); in rmdir_all_sub()
2480 struct kernfs_node *kn; in mon_addfile() local
2483 kn = __kernfs_create_file(parent_kn, name, 0444, in mon_addfile()
2486 if (IS_ERR(kn)) in mon_addfile()
2487 return PTR_ERR(kn); in mon_addfile()
2489 ret = rdtgroup_kn_set_ugid(kn); in mon_addfile()
2491 kernfs_remove(kn); in mon_addfile()
2524 struct kernfs_node *kn; in mkdir_mondata_subdir() local
2532 kn = kernfs_create_dir(parent_kn, name, parent_kn->mode, prgrp); in mkdir_mondata_subdir()
2533 if (IS_ERR(kn)) in mkdir_mondata_subdir()
2534 return PTR_ERR(kn); in mkdir_mondata_subdir()
2536 ret = rdtgroup_kn_set_ugid(kn); in mkdir_mondata_subdir()
2549 ret = mon_addfile(kn, mevt->name, priv.priv); in mkdir_mondata_subdir()
2556 kernfs_activate(kn); in mkdir_mondata_subdir()
2560 kernfs_remove(kn); in mkdir_mondata_subdir()
2628 struct kernfs_node *kn; in mkdir_mondata_all() local
2634 ret = mongroup_create_dir(parent_kn, prgrp, "mon_data", &kn); in mkdir_mondata_all()
2639 *dest_kn = kn; in mkdir_mondata_all()
2646 ret = mkdir_mondata_subdir_alldom(kn, r, prgrp); in mkdir_mondata_all()
2654 kernfs_remove(kn); in mkdir_mondata_all()
2836 struct kernfs_node *kn; in mkdir_rdt_prepare() local
2867 kn = kernfs_create_dir(parent_kn, name, mode, rdtgrp); in mkdir_rdt_prepare()
2868 if (IS_ERR(kn)) { in mkdir_rdt_prepare()
2869 ret = PTR_ERR(kn); in mkdir_rdt_prepare()
2873 rdtgrp->kn = kn; in mkdir_rdt_prepare()
2881 kernfs_get(kn); in mkdir_rdt_prepare()
2883 ret = rdtgroup_kn_set_ugid(kn); in mkdir_rdt_prepare()
2890 ret = rdtgroup_add_files(kn, files); in mkdir_rdt_prepare()
2904 ret = mkdir_mondata_all(kn, rdtgrp, &rdtgrp->mon.mon_data_kn); in mkdir_rdt_prepare()
2910 kernfs_activate(kn); in mkdir_rdt_prepare()
2920 kernfs_put(rdtgrp->kn); in mkdir_rdt_prepare()
2921 kernfs_remove(rdtgrp->kn); in mkdir_rdt_prepare()
2931 kernfs_remove(rgrp->kn); in mkdir_rdt_prepare_clean()
2972 struct kernfs_node *kn; in rdtgroup_mkdir_ctrl_mon() local
2980 kn = rdtgrp->kn; in rdtgroup_mkdir_ctrl_mon()
3001 ret = mongroup_create_dir(kn, rdtgrp, "mon_groups", NULL); in rdtgroup_mkdir_ctrl_mon()
3031 static bool is_mon_groups(struct kernfs_node *kn, const char *name) in is_mon_groups() argument
3033 return (!strcmp(kn->name, "mon_groups") && in is_mon_groups()
3049 if (rdt_alloc_capable && parent_kn == rdtgroup_default.kn) in rdtgroup_mkdir()
3089 kernfs_remove(rdtgrp->kn); in rdtgroup_rmdir_mon()
3099 kernfs_remove(rdtgrp->kn); in rdtgroup_ctrl_remove()
3140 static int rdtgroup_rmdir(struct kernfs_node *kn) in rdtgroup_rmdir() argument
3142 struct kernfs_node *parent_kn = kn->parent; in rdtgroup_rmdir()
3150 rdtgrp = rdtgroup_kn_lock_live(kn); in rdtgroup_rmdir()
3163 if (rdtgrp->type == RDTCTRL_GROUP && parent_kn == rdtgroup_default.kn && in rdtgroup_rmdir()
3172 is_mon_groups(parent_kn, kn->name)) { in rdtgroup_rmdir()
3179 rdtgroup_kn_unlock(kn); in rdtgroup_rmdir()
3224 ret = rdtgroup_add_files(rdt_root->kn, RF_CTRL_BASE); in rdtgroup_setup_root()
3230 rdtgroup_default.kn = rdt_root->kn; in rdtgroup_setup_root()
3231 kernfs_activate(rdtgroup_default.kn); in rdtgroup_setup_root()