Defined in 2 files as a function:
Referenced in 10 files:
- fs/kernfs/dir.c
- fs/kernfs/file.c, line 984
- fs/kernfs/inode.c
- fs/resctrl/rdtgroup.c
- fs/sysfs/dir.c, line 100
- fs/sysfs/file.c, line 649
- fs/sysfs/symlink.c, line 188
- include/linux/kernfs.h, line 390
- kernel/cgroup/cgroup-v1.c
- kernel/cgroup/cgroup.c
Smatch caller information:
fs/kernfs/file.c kernfs_notify() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| DATA_SOURCE | 0 | kn | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | kn | unit_array_size |
| HALF_LOCKED2 | &conf->device_lock | ||
| HALF_LOCKED2 | &cxl_mbox->mbox_mutex | ||
| HALF_LOCKED2 | &dev->mutex | ||
| HALF_LOCKED2 | &smaster->lock | ||
| HALF_LOCKED2 | flags |
fs/kernfs/dir.c kernfs_add_one() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 0 | kn | 0 |
| DATA_SOURCE | 0 | kn | r kernfs_parent |
| BIT_INFO | 0 | kn | 0x0,0x0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &root->kernfs_rwsem | ||
| TYPE_LOCK | (struct kernfs_root)->kernfs_rwsem |
fs/kernfs/dir.c kernfs_leftmost_descendant() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn | (-1),1-s32max |
| BUF_SIZE | 0 | kn | (-1),1-s32max |
| BUF_SIZE | 0 | kn->dir.root | (-1),880 |
| BUF_SIZE | 0 | kn->ns | (-1),256 |
| BUF_SIZE | 0 | kn->priv | (-1),40,136,480,696,928,1128,1160,1392,1624,1848,8192 |
| DATA_SOURCE | 0 | kn | $0 [m] |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HOST_DATA | 0 | kn->attr.size | s32min-(-1),1-4294967295 |
| UNITS | 0 | kn | unit_array_size |
| LOCK2 | &root->kernfs_rwsem | ||
| HALF_LOCKED2 | &root->kernfs_supers_rwsem | ||
| TYPE_LOCK | (struct kernfs_root)->kernfs_rwsem |
fs/kernfs/dir.c kernfs_link_sibling() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn->ns | (-1),256 |
| BUF_SIZE | 0 | kn->priv | (-1),40,136,480,696,928,1128,1160,1392,1624,1848 |
| CAPPED_DATA | 0 | kn->hash | 1 |
| CAPPED_DATA | 0 | kn->ns | 1 |
| CAPPED_DATA | 0 | &kn->rb | 1 |
| DATA_SOURCE | 0 | kn | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HOST_DATA | 0 | kn->attr.size | s32min-4294967295 |
| NO_OVERFLOW_SIMPLE | 0 | kn->attr.size | |
| LOCK2 | &root->kernfs_rwsem | ||
| HALF_LOCKED2 | global &dpm_list_mtx | ||
| TYPE_LOCK | (struct kernfs_root)->kernfs_rwsem |
fs/kernfs/dir.c kernfs_put() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn | s32min-s32max |
| BUF_SIZE | 0 | kn->attr.ops | (-1),104 |
| BUF_SIZE | 0 | kn->ns | (-1),256 |
| BUF_SIZE | 0 | kn->priv | (-1),40,136,480,696,928,1128,1160,1392,1624,1848 |
| DATA_SOURCE | 0 | kn | $0 [m] |
| STR_LEN | 0 | kn | (-1),3-6,10-13,16-19 |
| STR_LEN | 0 | kn | (-1),3-6,10-13,16-19 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HOST_DATA | 0 | kn->attr.size | s32min-(-1),1-4294967295 |
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &root->kernfs_rwsem | ||
| HALF_LOCKED2 | &root->kernfs_supers_rwsem | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | global &cgroup_mutex | ||
| HALF_LOCKED2 | global &domain_list_lock | ||
| HALF_LOCKED2 | global &dpm_list_mtx | ||
| HALF_LOCKED2 | global &rdtgroup_mutex | ||
| HALF_LOCKED2 | global &usb_port_peer_mutex |
fs/kernfs/dir.c kernfs_show() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| DATA_SOURCE | 0 | kn | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | global &cgroup_mutex | ||
| HALF_LOCKED2 | global &rdtgroup_mutex |
fs/kernfs/dir.c kernfs_unlink_sibling() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn | (-1),1-s32max |
| BUF_SIZE | 0 | kn | (-1),1-s32max |
| DATA_SOURCE | 0 | kn | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | kn | unit_array_size |
| LOCK2 | &root->kernfs_rwsem | ||
| HALF_LOCKED2 | &root->kernfs_supers_rwsem | ||
| HALF_LOCKED2 | global &dpm_list_mtx | ||
| TYPE_LOCK | (struct kernfs_root)->kernfs_rwsem |
fs/resctrl/rdtgroup.c kernfs_to_rdtgroup() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kn | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | kn | unit_array_size |
fs/resctrl/rdtgroup.c rdtgroup_kn_mode_restore() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| CAPPED_DATA | 0 | kn->hash | 1 |
| DATA_SOURCE | 0 | kn | r kernfs_find_and_get_ns |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &of->mutex | ||
| LOCK2 | global &rdtgroup_mutex | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
fs/resctrl/rdtgroup.c rdtgroup_kn_mode_restrict() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| CAPPED_DATA | 0 | kn->hash | 1 |
| DATA_SOURCE | 0 | kn | r kernfs_find_and_get_ns |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | &of->mutex | ||
| LOCK2 | global &rdtgroup_mutex | ||
| HALF_LOCKED2 | &of->prealloc_mutex | ||
| HALF_LOCKED2 | &pool->lock | ||
| TYPE_LOCK | (struct kernfs_open_file)->mutex |
fs/resctrl/rdtgroup.c rdtgroup_rename() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | kn | 1 |
| DATA_SOURCE | 0 | kn | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &rdtgroup_mutex | ||
| HALF_LOCKED2 | &source->i_rwsem | ||
| HALF_LOCKED2 | &target->i_rwsem |
fs/resctrl/rdtgroup.c rdtgroup_rename() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-2),1-s32max |
| CAPPED_DATA | 0 | kn | 1 |
| DATA_SOURCE | 0 | kn | $1 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| LOCK2 | global &rdtgroup_mutex | ||
| HALF_LOCKED2 | &source->i_rwsem | ||
| HALF_LOCKED2 | &target->i_rwsem |
fs/kernfs/inode.c kernfs_init_inode() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| DATA_SOURCE | 0 | kn | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &kf_root->kernfs_rwsem | ||
| HALF_LOCKED2 | &root->kernfs_rwsem | ||
| HALF_LOCKED2 | _T->lock | ||
| HALF_LOCKED2 | global &cgroup_mutex |
fs/kernfs/inode.c kernfs_refresh_inode() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kn | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | kn | unit_array_size |
| HALF_LOCKED2 | &root->kernfs_iattr_rwsem |
fs/sysfs/file.c sysfs_link_change_owner() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| CAPPED_DATA | 0 | kn->hash | 1 |
| DATA_SOURCE | 0 | kn | r kernfs_find_and_get_ns |
| RX_PATH | |||
| TASK_NOT_RUNNING |
kernel/cgroup/cgroup.c __cgroup_get_from_id() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| DATA_SOURCE | 0 | kn | r kernfs_find_and_get_node_by_id |
| RX_PATH | |||
| TASK_NOT_RUNNING |
kernel/cgroup/cgroup.c cgroup_get_from_path() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| DATA_SOURCE | 0 | kn | r kernfs_walk_and_get |
| RX_PATH | |||
| TASK_NOT_RUNNING |
kernel/cgroup/cgroup.c cgroup_kn_lock_live() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kn | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | kn | unit_array_size |
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &seq->lock |
kernel/cgroup/cgroup.c cgroup_kn_unlock() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kn | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| UNITS | 0 | kn | unit_array_size |
| HALF_LOCKED2 | &of->mutex | ||
| HALF_LOCKED2 | &seq->lock | ||
| HALF_LOCKED2 | global &cgroup_mutex |
kernel/cgroup/cgroup.c css_tryget_online_from_dir() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 1-u64max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kn | r kernfs_node_from_dentry |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &of->mutex |
kernel/cgroup/cgroup-v1.c cgroup1_rename() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| BUF_SIZE | 0 | kn | s32min-(-2),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-2),1-s32max |
| DATA_SOURCE | 0 | kn | $0 |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &source->i_rwsem | ||
| HALF_LOCKED2 | &target->i_rwsem |
kernel/cgroup/cgroup-v1.c cgroupstats_build() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 1-u64max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| BUF_SIZE | 0 | kn | s32min-(-1),1-s32max |
| DATA_SOURCE | 0 | kn | r kernfs_node_from_dentry |
| RX_PATH | |||
| TASK_NOT_RUNNING | |||
| HALF_LOCKED2 | &dev->lock | ||
| HALF_LOCKED2 | &devlink->lock | ||
| HALF_LOCKED2 | &net->xfrm.xfrm_cfg_mutex | ||
| HALF_LOCKED2 | global &audit_cmd_mutex.lock | ||
| HALF_LOCKED2 | global &cb_lock | ||
| HALF_LOCKED2 | global &crypto_cfg_mutex | ||
| HALF_LOCKED2 | global &dpll_lock | ||
| HALF_LOCKED2 | global &hwsim_phys_lock | ||
| HALF_LOCKED2 | global &net_dm_mutex | ||
| HALF_LOCKED2 | global &rtnl_mutex | ||
| HALF_LOCKED2 | global &rx_queue_mutex | ||
| HALF_LOCKED2 | rcu_read |
fs/sysfs/dir.c sysfs_remove_dir() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 1-u64max |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |
fs/sysfs/symlink.c sysfs_rename_link_ns() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| CAPPED_DATA | 0 | kn->hash | 1 |
| DATA_SOURCE | 0 | kn | r kernfs_find_and_get_ns |
| RX_PATH | |||
| TASK_NOT_RUNNING |
lib/kobject.c kernfs_enable_ns() -> kernfs_type()
| Type | Parameter | Key | Value |
|---|---|---|---|
| PARAM_VALUE | 0 | kn | 4096-ptr_max |
| DATA_SOURCE | 0 | kn | $0 |
| PREEMPT_ADD | |||
| RX_PATH | |||
| TASK_NOT_RUNNING |