/linux/fs/kernfs/ |
H A D | symlink.c | 29 struct kernfs_node *kn; in kernfs_create_link() local 39 kn = kernfs_new_node(parent, name, S_IFLNK|0777, uid, gid, KERNFS_LINK); in kernfs_create_link() 40 if (!kn) in kernfs_create_link() 44 kn->ns = target->ns; in kernfs_create_link() 45 kn->symlink.target_kn = target; in kernfs_create_link() 48 error = kernfs_add_one(kn); in kernfs_create_link() 50 return kn; in kernfs_create_link() 52 kernfs_put(kn); in kernfs_create_link() 59 struct kernfs_node *base, *kn; in kernfs_get_target_path() local 66 kn in kernfs_get_target_path() 114 struct kernfs_node *kn = inode->i_private; kernfs_getlink() local [all...] |
H A D | inode.c | 27 static struct kernfs_iattrs *__kernfs_iattrs(struct kernfs_node *kn, bool alloc) in __kernfs_iattrs() argument 32 attr = READ_ONCE(kn->iattr); in __kernfs_iattrs() 53 if (!try_cmpxchg(&kn->iattr, &attr, ret)) in __kernfs_iattrs() 54 return READ_ONCE(kn->iattr); in __kernfs_iattrs() 59 static struct kernfs_iattrs *kernfs_iattrs(struct kernfs_node *kn) in kernfs_iattrs() argument 61 return __kernfs_iattrs(kn, true); in kernfs_iattrs() 64 static struct kernfs_iattrs *kernfs_iattrs_noalloc(struct kernfs_node *kn) in kernfs_iattrs_noalloc() argument 66 return __kernfs_iattrs(kn, false); in kernfs_iattrs_noalloc() 69 int __kernfs_setattr(struct kernfs_node *kn, const struct iattr *iattr) in __kernfs_setattr() argument 74 attrs = kernfs_iattrs(kn); in __kernfs_setattr() [all …]
|
H A D | kernfs-internal.h | 36 struct kernfs_node *kn; member 54 /* kn->parent and kn->name */ 67 * @kn: kernfs_node of interest 69 * Return: the kernfs_root @kn belongs to. 71 static inline struct kernfs_root *kernfs_root(const struct kernfs_node *kn) in kernfs_root() argument 76 knp = rcu_dereference(kn->__parent); in kernfs_root() 78 kn = knp; in kernfs_root() 79 return kn->dir.root; in kernfs_root() 107 static inline bool kernfs_root_is_locked(const struct kernfs_node *kn) in kernfs_root_is_locked() argument 112 kernfs_rename_is_locked(const struct kernfs_node * kn) kernfs_rename_is_locked() argument 117 kernfs_rcu_name(const struct kernfs_node * kn) kernfs_rcu_name() argument 122 kernfs_parent(const struct kernfs_node * kn) kernfs_parent() argument [all...] |
H A D | mount.c | 85 struct kernfs_node *kn = inode->i_private; in kernfs_encode_fh() local 93 *(u64 *)fh = kn->id; in kernfs_encode_fh() 102 struct kernfs_node *kn; in __kernfs_fh_to_dentry() local 127 kn = kernfs_find_and_get_node_by_id(info->root, id); in __kernfs_fh_to_dentry() 128 if (!kn) in __kernfs_fh_to_dentry() 134 parent = kernfs_get_parent(kn); in __kernfs_fh_to_dentry() 135 kernfs_put(kn); in __kernfs_fh_to_dentry() 136 kn = parent; in __kernfs_fh_to_dentry() 137 if (!kn) in __kernfs_fh_to_dentry() 141 inode = kernfs_get_inode(sb, kn); in __kernfs_fh_to_dentry() 162 struct kernfs_node *kn = kernfs_dentry_node(child); kernfs_get_parent_dentry() local 222 kernfs_node_dentry(struct kernfs_node * kn,struct super_block * sb) kernfs_node_dentry() argument [all...] |
/linux/include/linux/ |
H A D | kernfs.h | 160 /* children rbtree starts here and goes through kn->rb */ 247 int (*rmdir)(struct kernfs_node *kn); 248 int (*rename)(struct kernfs_node *kn, struct kernfs_node *new_parent, 250 int (*show_path)(struct seq_file *sf, struct kernfs_node *kn, 258 struct kernfs_node *kn; member 343 static inline enum kernfs_node_type kernfs_type(struct kernfs_node *kn) in kernfs_type() argument 345 return kn->flags & KERNFS_TYPE_MASK; in kernfs_type() 366 static inline ino_t kernfs_ino(struct kernfs_node *kn) in kernfs_ino() argument 368 return kernfs_id_ino(kn->id); in kernfs_ino() 371 static inline ino_t kernfs_gen(struct kernfs_node *kn) in kernfs_gen() argument 384 kernfs_enable_ns(struct kernfs_node * kn) kernfs_enable_ns() argument 397 kernfs_ns_enabled(struct kernfs_node * kn) kernfs_ns_enabled() argument 473 kernfs_type(struct kernfs_node * kn) kernfs_type() argument 476 kernfs_enable_ns(struct kernfs_node * kn) kernfs_enable_ns() argument 478 kernfs_ns_enabled(struct kernfs_node * kn) kernfs_ns_enabled() argument 481 kernfs_name(struct kernfs_node * kn,char * buf,size_t buflen) kernfs_name() argument 485 kernfs_path_from_node(struct kernfs_node * root_kn,struct kernfs_node * kn,char * buf,size_t buflen) kernfs_path_from_node() argument 489 pr_cont_kernfs_name(struct kernfs_node * kn) pr_cont_kernfs_name() argument 490 pr_cont_kernfs_path(struct kernfs_node * kn) pr_cont_kernfs_path() argument 492 kernfs_get_parent(struct kernfs_node * kn) kernfs_get_parent() argument 504 kernfs_get(struct kernfs_node * kn) kernfs_get() argument 505 kernfs_put(struct kernfs_node * kn) kernfs_put() argument 514 kernfs_get_inode(struct super_block * sb,struct kernfs_node * kn) kernfs_get_inode() argument 523 kernfs_root_flags(struct kernfs_node * kn) kernfs_root_flags() argument 544 kernfs_activate(struct kernfs_node * kn) kernfs_activate() argument 546 kernfs_remove(struct kernfs_node * kn) kernfs_remove() argument 548 kernfs_remove_self(struct kernfs_node * kn) kernfs_remove_self() argument 551 kernfs_remove_by_name_ns(struct kernfs_node * kn,const char * name,const void * ns) kernfs_remove_by_name_ns() argument 555 kernfs_rename_ns(struct kernfs_node * kn,struct kernfs_node * new_parent,const char * new_name,const void * new_ns) kernfs_rename_ns() argument 560 kernfs_setattr(struct kernfs_node * kn,const struct iattr * iattr) kernfs_setattr() argument 568 kernfs_notify(struct kernfs_node * kn) kernfs_notify() argument 570 kernfs_xattr_get(struct kernfs_node * kn,const char * name,void * value,size_t size) kernfs_xattr_get() argument 574 kernfs_xattr_set(struct kernfs_node * kn,const char * name,const void * value,size_t size,int flags) kernfs_xattr_set() argument 604 kernfs_path(struct kernfs_node * kn,char * buf,size_t buflen) kernfs_path() argument 610 kernfs_find_and_get(struct kernfs_node * kn,const char * name) kernfs_find_and_get() argument 616 kernfs_walk_and_get(struct kernfs_node * kn,const char * path) kernfs_walk_and_get() argument 636 kernfs_rename(struct kernfs_node * kn,struct kernfs_node * new_parent,const char * new_name) kernfs_rename() argument [all...] |
H A D | sysfs.h | 417 void sysfs_unbreak_active_protection(struct kernfs_node *kn); 475 static inline void sysfs_enable_ns(struct kernfs_node *kn) in sysfs_enable_ns() argument 477 return kernfs_enable_ns(kn); in sysfs_enable_ns() 561 static inline void sysfs_unbreak_active_protection(struct kernfs_node *kn) in sysfs_unbreak_active_protection() argument 708 static inline void sysfs_enable_ns(struct kernfs_node *kn) in sysfs_enable_ns() argument 786 static inline void sysfs_notify_dirent(struct kernfs_node *kn) in sysfs_notify_dirent() argument 788 kernfs_notify(kn); in sysfs_notify_dirent() 797 static inline struct kernfs_node *sysfs_get(struct kernfs_node *kn) in sysfs_get() argument 799 kernfs_get(kn); in sysfs_get() 800 return kn; in sysfs_get() 803 sysfs_put(struct kernfs_node * kn) sysfs_put() argument [all...] |
H A D | cgroup.h | 334 return cgrp->kn->id; in cgroup_id() 584 return kernfs_ino(cgrp->kn); in cgroup_ino() 590 return of->kn->priv; in of_cft() 613 return kernfs_name(cgrp->kn, buf, buflen); in cgroup_name() 618 return kernfs_path(cgrp->kn, buf, buflen); in cgroup_path() 623 pr_cont_kernfs_name(cgrp->kn); in pr_cont_cgroup_name() 628 pr_cont_kernfs_path(cgrp->kn); in pr_cont_cgroup_path()
|
/linux/fs/sysfs/ |
H A D | file.c | 22 static struct kobject *sysfs_file_kobj(struct kernfs_node *kn) in sysfs_file_kobj() argument 25 return rcu_dereference(kn->__parent)->priv; in sysfs_file_kobj() 32 static const struct sysfs_ops *sysfs_file_ops(struct kernfs_node *kn) in sysfs_file_ops() argument 34 struct kobject *kobj = sysfs_file_kobj(kn); in sysfs_file_ops() 36 if (kn->flags & KERNFS_LOCKDEP) in sysfs_file_ops() 37 lockdep_assert_held(kn); in sysfs_file_ops() 49 struct kobject *kobj = sysfs_file_kobj(of->kn); in sysfs_kf_seq_show() 50 const struct sysfs_ops *ops = sysfs_file_ops(of->kn); in sysfs_kf_seq_show() 65 count = ops->show(kobj, of->kn->priv, buf); in sysfs_kf_seq_show() 86 const struct bin_attribute *battr = of->kn in sysfs_kf_bin_read() 206 struct kernfs_node *kn = kobj->sd, *tmp; sysfs_notify() local 287 struct kernfs_node *kn; sysfs_add_file_mode_ns() local 336 struct kernfs_node *kn; sysfs_add_bin_file_mode_ns() local 447 struct kernfs_node *kn; sysfs_chmod_file() local 478 struct kernfs_node *kn; sysfs_break_active_protection() local 501 sysfs_unbreak_active_protection(struct kernfs_node * kn) sysfs_unbreak_active_protection() argument 538 struct kernfs_node *kn; sysfs_remove_file_self() local 618 internal_change_owner(struct kernfs_node * kn,kuid_t kuid,kgid_t kgid) internal_change_owner() argument 646 struct kernfs_node *kn = NULL; sysfs_link_change_owner() local 685 struct kernfs_node *kn; sysfs_file_change_owner() local [all...] |
H A D | dir.c | 42 struct kernfs_node *parent, *kn; in sysfs_create_dir_ns() local 59 kn = kernfs_create_dir_ns(parent, kobject_name(kobj), 0755, uid, gid, in sysfs_create_dir_ns() 61 if (IS_ERR(kn)) { in sysfs_create_dir_ns() 62 if (PTR_ERR(kn) == -EEXIST) in sysfs_create_dir_ns() 64 return PTR_ERR(kn); in sysfs_create_dir_ns() 67 kobj->sd = kn; in sysfs_create_dir_ns() 81 struct kernfs_node *kn = kobj->sd; in sysfs_remove_dir() local 99 if (kn) { in sysfs_remove_dir() 100 WARN_ON_ONCE(kernfs_type(kn) != KERNFS_DIR); in sysfs_remove_dir() 101 kernfs_remove(kn); in sysfs_remove_dir() 120 struct kernfs_node *kn = kobj->sd; sysfs_move_dir_ns() local 136 struct kernfs_node *kn, *parent = parent_kobj->sd; sysfs_create_mount_point() local [all...] |
H A D | symlink.c | 24 struct kernfs_node *kn, *target = NULL; in sysfs_do_create_link_sd() local 44 kn = kernfs_create_link(parent, name, target); in sysfs_do_create_link_sd() 47 if (!IS_ERR(kn)) in sysfs_do_create_link_sd() 50 if (warn && PTR_ERR(kn) == -EEXIST) in sysfs_do_create_link_sd() 52 return PTR_ERR(kn); in sysfs_do_create_link_sd() 57 * @kn: directory we're creating the link in. 61 int sysfs_create_link_sd(struct kernfs_node *kn, struct kobject *target, in sysfs_create_link_sd() argument 64 return sysfs_do_create_link_sd(kn, target, name, 1); in sysfs_create_link_sd() 169 struct kernfs_node *parent, *kn = NULL; in sysfs_rename_link_ns() local 182 kn in sysfs_rename_link_ns() [all...] |
H A D | group.c | 126 struct kernfs_node *kn; in internal_create_group() local 154 kn = kernfs_find_and_get(kobj->sd, grp->name); in internal_create_group() 155 if (!kn) { in internal_create_group() 162 kernfs_put(kn); in internal_create_group() 170 kn = kernfs_create_dir_ns(kobj->sd, grp->name, mode, in internal_create_group() 172 if (IS_ERR(kn)) { in internal_create_group() 173 if (PTR_ERR(kn) == -EEXIST) in internal_create_group() 175 return PTR_ERR(kn); in internal_create_group() 179 kn = kobj->sd; in internal_create_group() 182 kernfs_get(kn); in internal_create_group() 308 struct kernfs_node *kn; sysfs_remove_group() local 505 struct kernfs_node *kn; sysfs_group_attrs_change_owner() local [all...] |
/linux/fs/resctrl/ |
H A D | rdtgroup.c | 278 static int rdtgroup_kn_set_ugid(struct kernfs_node *kn) in rdtgroup_kn_set_ugid() argument 288 return kernfs_setattr(kn, &iattr); in rdtgroup_kn_set_ugid() 293 struct kernfs_node *kn; in rdtgroup_add_file() local 296 kn = __kernfs_create_file(parent_kn, rft->name, rft->mode, in rdtgroup_add_file() 299 if (IS_ERR(kn)) in rdtgroup_add_file() 300 return PTR_ERR(kn); in rdtgroup_add_file() 302 ret = rdtgroup_kn_set_ugid(kn); in rdtgroup_add_file() 304 kernfs_remove(kn); in rdtgroup_add_file() 314 struct rftype *rft = of->kn->priv; in rdtgroup_seqfile_show() 324 struct rftype *rft = of->kn in rdtgroup_file_write() 984 rdt_kn_parent_priv(struct kernfs_node * kn) rdt_kn_parent_priv() argument 1996 rdtgroup_add_files(struct kernfs_node * kn,unsigned long fflags) rdtgroup_add_files() argument 2094 struct kernfs_node *kn; rdtgroup_kn_mode_restrict() local 2133 struct kernfs_node *kn, *parent; rdtgroup_kn_mode_restore() local 2258 struct kernfs_node *kn; mongroup_create_dir() local 2365 kernfs_to_rdtgroup(struct kernfs_node * kn) kernfs_to_rdtgroup() argument 2384 rdtgroup_kn_get(struct rdtgroup * rdtgrp,struct kernfs_node * kn) rdtgroup_kn_get() argument 2390 rdtgroup_kn_put(struct rdtgroup * rdtgrp,struct kernfs_node * kn) rdtgroup_kn_put() argument 2404 rdtgroup_kn_lock_live(struct kernfs_node * kn) rdtgroup_kn_lock_live() argument 2423 rdtgroup_kn_unlock(struct kernfs_node * kn) rdtgroup_kn_unlock() argument 2991 struct kernfs_node *kn; mon_addfile() local 3011 struct kernfs_node *kn; mon_rmdir_one_subdir() local 3051 mon_add_all_files(struct kernfs_node * kn,struct rdt_mon_domain * d,struct rdt_resource * r,struct rdtgroup * prgrp,bool do_sum) mon_add_all_files() argument 3084 struct kernfs_node *kn, *ckn; mkdir_mondata_subdir() local 3202 struct kernfs_node *kn; mkdir_mondata_all() local 3456 is_mon_groups(struct kernfs_node * kn,const char * name) is_mon_groups() argument 3468 struct kernfs_node *kn; mkdir_rdt_prepare() local 3611 struct kernfs_node *kn; rdtgroup_mkdir_ctrl_mon() local 3779 rdt_kn_parent(struct kernfs_node * kn) rdt_kn_parent() argument 3788 rdtgroup_rmdir(struct kernfs_node * kn) rdtgroup_rmdir() argument 3869 rdtgroup_rename(struct kernfs_node * kn,struct kernfs_node * new_parent,const char * new_name) rdtgroup_rename() argument [all...] |
H A D | ctrlmondata.c | 317 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_schemata_write() 319 rdtgroup_kn_unlock(of->kn); in rdtgroup_schemata_write() 380 rdtgroup_kn_unlock(of->kn); in rdtgroup_schemata_write() 419 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_schemata_show() 446 rdtgroup_kn_unlock(of->kn); in rdtgroup_schemata_show() 468 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_mba_mbps_event_write() 470 rdtgroup_kn_unlock(of->kn); in rdtgroup_mba_mbps_event_write() 492 rdtgroup_kn_unlock(of->kn); in rdtgroup_mba_mbps_event_write() 503 rdtgrp = rdtgroup_kn_lock_live(of->kn); in rdtgroup_mba_mbps_event_show() 522 rdtgroup_kn_unlock(of->kn); in rdtgroup_mba_mbps_event_show() [all...] |
H A D | internal.h | 80 * Pointed to by the kernfs kn->priv field of monitoring event files. 176 * @kn: kernfs node 191 struct kernfs_node *kn; member 284 static inline const char *rdt_kn_name(const struct kernfs_node *kn) in rdt_kn_name() argument 286 return rcu_dereference_check(kn->name, lockdep_is_held(&rdtgroup_mutex)); in rdt_kn_name() 302 struct rdtgroup *rdtgroup_kn_lock_live(struct kernfs_node *kn); 304 void rdtgroup_kn_unlock(struct kernfs_node *kn);
|
/linux/kernel/cgroup/ |
H A D | cgroup.c | 112 * Protects cgroup_file->kn for !self csses. It synchronizes notifications 643 static struct cgroup *kn_priv(struct kernfs_node *kn) in kn_priv() argument 651 parent = rcu_dereference_check(kn->__parent, in kn_priv() 652 kernfs_root_flags(kn) & KERNFS_ROOT_INVARIANT_PARENT); in kn_priv() 658 struct cgroup *cgrp = kn_priv(of->kn); in of_css() 1624 * @kn: the kernfs_node being serviced 1632 void cgroup_kn_unlock(struct kernfs_node *kn) in cgroup_kn_unlock() argument 1636 if (kernfs_type(kn) == KERNFS_DIR) in cgroup_kn_unlock() 1637 cgrp = kn->priv; in cgroup_kn_unlock() 1639 cgrp = kn_priv(kn); in cgroup_kn_unlock() 1664 cgroup_kn_lock_live(struct kernfs_node * kn,bool drain_offline) cgroup_kn_lock_live() argument 4291 struct kernfs_node *kn; cgroup_add_file() local 4591 struct kernfs_node *kn; cgroup_file_show() local 5717 struct kernfs_node *kn; cgroup_create() local 6093 cgroup_rmdir(struct kernfs_node * kn) cgroup_rmdir() argument 6336 struct kernfs_node *kn; cgroup_path_from_kernfs_id() local 6353 struct kernfs_node *kn; cgroup_get_from_id() local 6943 struct kernfs_node *kn = kernfs_node_from_dentry(dentry); css_tryget_online_from_dir() local 6996 struct kernfs_node *kn; cgroup_get_from_path() local [all...] |
H A D | debug.c | 48 if (!cgroup_kn_lock_live(of->kn, false)) in current_css_set_read() 72 cgroup_kn_unlock(of->kn); in current_css_set_read() 212 cgrp = cgroup_kn_lock_live(of->kn, false); in cgroup_subsys_states_read() 232 cgroup_kn_unlock(of->kn); in cgroup_subsys_states_read() 260 cgrp = cgroup_kn_lock_live(of->kn, false); in cgroup_masks_read() 267 cgroup_kn_unlock(of->kn); in cgroup_masks_read()
|
H A D | cgroup-v1.c | 507 cgrp = cgroup_kn_lock_live(of->kn, false); in __cgroup1_procs_write() 536 cgroup_kn_unlock(of->kn); in __cgroup1_procs_write() 570 cgrp = cgroup_kn_lock_live(of->kn, false); in cgroup_release_agent_write() 577 cgroup_kn_unlock(of->kn); in cgroup_release_agent_write() 720 struct kernfs_node *kn = kernfs_node_from_dentry(dentry); in cgroupstats_build() local 726 if (dentry->d_sb->s_type != &cgroup_fs_type || !kn || in cgroupstats_build() 727 kernfs_type(kn) != KERNFS_DIR) in cgroupstats_build() 732 * @kn->priv's validity. For this and css_tryget_online_from_dir(), in cgroupstats_build() 733 * @kn->priv is RCU safe. Let's do the RCU dancing. in cgroupstats_build() 736 cgrp = rcu_dereference(*(void __rcu __force **)&kn in cgroupstats_build() 846 cgroup1_rename(struct kernfs_node * kn,struct kernfs_node * new_parent,const char * new_name_str) cgroup1_rename() argument [all...] |
H A D | cgroup-internal.h | 230 struct cgroup *cgroup_kn_lock_live(struct kernfs_node *kn, bool drain_offline); 231 void cgroup_kn_unlock(struct kernfs_node *kn); 263 int cgroup_rmdir(struct kernfs_node *kn);
|
/linux/scripts/gdb/linux/ |
H A D | device.py | 73 for kn in klist_for_each(bus['klist_devices']): 74 dp = container_of(kn, device_private_type.get_type().pointer(), 'knode_bus') 79 for kn in klist_for_each(cls['klist_devices']): 80 dp = container_of(kn, device_private_type.get_type().pointer(), 'knode_class') 85 for kn in klist_for_each(dev['p']['klist_children']): 86 dp = container_of(kn, device_private_type.get_type().pointer(), 'knode_parent')
|
/linux/drivers/net/ethernet/apm/xgene/ |
H A D | xgene_enet_cle.c | 50 static void xgene_cle_kn_to_hw(struct xgene_cle_ptree_kn *kn, u32 *buf) in xgene_cle_kn_to_hw() argument 55 buf[j++] = SET_VAL(CLE_TYPE, kn->node_type); in xgene_cle_kn_to_hw() 56 for (i = 0; i < kn->num_keys; i++) { in xgene_cle_kn_to_hw() 57 struct xgene_cle_ptree_key *key = &kn->key[i]; in xgene_cle_kn_to_hw() 569 struct xgene_cle_ptree_kn *kn = ptree->kn; in xgene_cle_setup_node() local 585 xgene_cle_kn_to_hw(&kn[j - num_dn], buf); in xgene_cle_setup_node() 767 struct xgene_cle_ptree_kn kn; in xgene_enet_cle_init() local 806 memset(&kn, 0, sizeof(kn)); in xgene_enet_cle_init() [all...] |
/linux/arch/s390/pci/ |
H A D | pci_sysfs.c | 80 struct kernfs_node *kn; in recover_store() local 95 kn = sysfs_break_active_protection(&dev->kobj, &attr->attr); in recover_store() 96 WARN_ON_ONCE(!kn); in recover_store() 122 if (kn) in recover_store() 123 sysfs_unbreak_active_protection(kn); in recover_store()
|
/linux/tools/testing/selftests/bpf/progs/ |
H A D | test_cgroup1_hierarchy.c | 37 if (cgrp->kn->id == target_ancestor_cgid) in bpf_link_create_verify() 44 if (ancestor->kn->id == target_ancestor_cgid) in bpf_link_create_verify()
|
H A D | iters_css.c | 53 last_cg_id = cur_cgrp->kn->id; in iter_css_for_each() 60 first_cg_id = cur_cgrp->kn->id; in iter_css_for_each()
|
/linux/drivers/of/ |
H A D | kobj.c | 43 struct kernfs_node *kn; in safe_name() local 47 while (i < 16 && (kn = sysfs_get_dirent(kobj->sd, name))) { in safe_name() 48 sysfs_put(kn); in safe_name()
|
/linux/drivers/usb/core/ |
H A D | port.c | 61 struct kernfs_node *kn; in disable_show() local 74 kn = sysfs_break_active_protection(&dev->kobj, &attr->attr); in disable_show() 75 if (!kn) { in disable_show() 90 sysfs_unbreak_active_protection(kn); in disable_show() 112 struct kernfs_node *kn; in disable_store() local 129 kn = sysfs_break_active_protection(&dev->kobj, &attr->attr); in disable_store() 130 if (!kn) { in disable_store() 156 sysfs_unbreak_active_protection(kn); in disable_store()
|