Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 14 files:

Smatch caller information:

drivers/ufs/core/ufshcd.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/kernfs/file.c __kernfs_create_file() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0,4096-ptr_max
PARAM_VALUE 0 kn->active.counter (-2147483647)
PARAM_VALUE 0 kn->count.counter 1
PARAM_VALUE 0 kn->flags 2,66,130,194,258,322,386,450,8194,8258,8322,8386,8450,8514,8578,8642
PARAM_VALUE 0 kn->hash 2-2147483646
PARAM_VALUE 0 kn->name 4096-ptr_max
PARAM_VALUE 0 kn->ns 0,4096-ptr_max
PARAM_VALUE 0 kn->priv 4096-ptr_max
BUF_SIZE 0 kn->attr.ops (-1),104
BUF_SIZE 0 kn->priv (-1),40,696,928,1160,1392,1624,1848
CAPPED_DATA 0 kn 1
CAPPED_DATA 0 kn->name 1
DATA_SOURCE 0 kn r kernfs_new_node
BIT_INFO 0 kn->flags 0x2,0x21c2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HOST_DATA 0 kn->attr.size s32min-(-1),1-4294967295
HALF_LOCKED2 global &rdtgroup_mutex

fs/kernfs/file.c kernfs_notify_workfn() -> kernfs_put()

Type Parameter Key Value
BUF_SIZE 0 kn 0
DATA_SOURCE 0 kn r kernfs_get_parent
BIT_INFO 0 kn 0x0,0x0
NOCHECK_CALL
LOCK2 &root->kernfs_rwsem
LOCK2 &root->kernfs_supers_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_root)->kernfs_rwsem
TYPE_LOCK (struct kernfs_root)->kernfs_supers_rwsem

fs/kernfs/file.c kernfs_notify_workfn() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-426918848001064959,426918848001064961-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->attr.notify_next 0
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/of/kobj.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &of_mutex

drivers/nvdimm/pmem.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->mutex
TYPE_LOCK (struct device)->mutex

drivers/nvdimm/dimm_devs.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
NOCHECK_CALL

drivers/md/md.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/usb/core/port.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &usb_port_peer_mutex

fs/kernfs/mount.c __kernfs_fh_to_dentry() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->active.counter 0-s32max
PARAM_VALUE 0 kn->count.counter 0-s32max
DATA_SOURCE 0 kn r kernfs_find_and_get_node_by_id
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/kernfs/mount.c __kernfs_fh_to_dentry() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->active.counter 0-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/leds/leds-turris-omnia.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 1-u64max
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->mutex

drivers/gpio/gpiolib-sysfs.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 _T->lock

fs/kernfs/dir.c __kernfs_new_node() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->attr.open->nr_mmapped 0-4294967295
BUF_SIZE 0 kn s32min-(-1),1-s32max
BUF_SIZE 0 kn s32min-(-1),1-s32max
DATA_SOURCE 0 kn $1
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
NOCHECK_CALL

fs/kernfs/dir.c __kernfs_remove() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 kn->attr.open->nr_to_release 0
PARAM_VALUE 0 kn->dir.children.rb_node 0
BUF_SIZE 0 kn (-1)-s32max
BUF_SIZE 0 kn (-1)-s32max
DATA_SOURCE 0 kn $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 kn->attr.size
UNITS 0 kn unit_array_size
LOCK2 &root->kernfs_rwsem
LOCK2 &root->kernfs_supers_rwsem
TYPE_LOCK (struct kernfs_root)->kernfs_rwsem
TYPE_LOCK (struct kernfs_root)->kernfs_supers_rwsem

fs/kernfs/dir.c __kernfs_remove() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 kn->attr.open->nr_to_release 0
PARAM_VALUE 0 kn->dir.children.rb_node 0
BUF_SIZE 0 kn (-1)-s32max
BUF_SIZE 0 kn (-1)-s32max
DATA_SOURCE 0 kn $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 0 kn->attr.size
UNITS 0 kn unit_array_size
LOCK2 &root->kernfs_rwsem
LOCK2 &root->kernfs_supers_rwsem
TYPE_LOCK (struct kernfs_root)->kernfs_rwsem
TYPE_LOCK (struct kernfs_root)->kernfs_supers_rwsem

fs/kernfs/dir.c kernfs_create_dir_ns() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0,4096-ptr_max
PARAM_VALUE 0 kn->active.counter (-2147483647)
PARAM_VALUE 0 kn->count.counter 1
PARAM_VALUE 0 kn->flags 1
PARAM_VALUE 0 kn->hash 2-2147483646
PARAM_VALUE 0 kn->name 4096-ptr_max
PARAM_VALUE 0 kn->ns 0,4096-ptr_max
PARAM_VALUE 0 kn->priv 0,4096-ptr_max
BUF_SIZE 0 kn->ns (-1),256
BUF_SIZE 0 kn->priv (-1),136,480,1128
CAPPED_DATA 0 kn 1
CAPPED_DATA 0 kn->name 1
DATA_SOURCE 0 kn r kernfs_new_node
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &rdtgroup_mutex

fs/kernfs/dir.c kernfs_create_empty_dir() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0,4096-ptr_max
PARAM_VALUE 0 kn->active.counter (-2147483647)
PARAM_VALUE 0 kn->count.counter 1
PARAM_VALUE 0 kn->flags 4097
PARAM_VALUE 0 kn->hash 2-2147483646
PARAM_VALUE 0 kn->name 4096-ptr_max
PARAM_VALUE 0 kn->ns 0
PARAM_VALUE 0 kn->priv 0
CAPPED_DATA 0 kn 1
CAPPED_DATA 0 kn->name 1
DATA_SOURCE 0 kn r kernfs_new_node
NOCHECK_CALL

fs/kernfs/dir.c kernfs_destroy_root() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 0,4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->dir.children.rb_node 0
CAPPED_DATA 0 kn 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &rdtgroup_mutex

fs/kernfs/dir.c kernfs_dir_fop_release() -> kernfs_put()

Type Parameter Key Value
BUF_SIZE 0 kn (-1),26
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/kernfs/dir.c kernfs_dir_pos() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
BUF_SIZE 0 kn s32min-(-1),1-s32max
BUF_SIZE 0 kn s32min-(-1),1-s32max
DATA_SOURCE 0 kn $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 kn unit_byte
LOCK2 &root->kernfs_rwsem
HALF_LOCKED2 &dir_fp->readdir_lock
HALF_LOCKED2 &inode->i_rwsem
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct inode)->i_rwsem
TYPE_LOCK (struct kernfs_root)->kernfs_rwsem

fs/kernfs/dir.c kernfs_put() -> kernfs_put()

Type Parameter Key Value
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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_remove_by_name_ns() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->dir.children.rb_node 0
CAPPED_DATA 0 kn 1
DATA_SOURCE 0 kn r kernfs_find_ns
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &root->kernfs_rwsem
LOCK2 &root->kernfs_supers_rwsem
HALF_LOCKED2 global &rdtgroup_mutex
TYPE_LOCK (struct kernfs_root)->kernfs_rwsem
TYPE_LOCK (struct kernfs_root)->kernfs_supers_rwsem

fs/kernfs/dir.c kernfs_rename_ns() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 1-u64max
CAPPED_DATA 0 kn 1
DATA_SOURCE 0 kn r kernfs_parent
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &root->kernfs_rwsem
LOCK2 global &dpm_list_mtx
HALF_LOCKED2 &hdev->lock
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct kernfs_root)->kernfs_rwsem

fs/resctrl/rdtgroup.c mkdir_mondata_subdir_snc() -> kernfs_put()

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
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &rdtgroup_mutex
HALF_LOCKED2 global &domain_list_lock

fs/resctrl/rdtgroup.c mkdir_rdt_prepare() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 kn unit_array_size
LOCK2 global &rdtgroup_mutex
HALF_LOCKED2 &dentry->d_lockref.lock

fs/resctrl/rdtgroup.c mon_rmdir_one_subdir() -> kernfs_put()

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
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &domain_list_lock
LOCK2 global &rdtgroup_mutex
HALF_LOCKED2 global &cpuhp_state_mutex
HALF_LOCKED2 irq

fs/resctrl/rdtgroup.c rdt_get_tree() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 kn unit_array_size
HALF_LOCKED2 &fc->uapi_mutex
HALF_LOCKED2 global &once_mutex

fs/resctrl/rdtgroup.c rdtgroup_kn_mode_restore() -> kernfs_put()

Type Parameter Key Value
BUF_SIZE 0 kn 0
DATA_SOURCE 0 kn r kernfs_get_parent
BIT_INFO 0 kn 0x0,0x0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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_restore() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->hash 2-2147483646
PARAM_VALUE 0 kn->ns 0,4096-ptr_max
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get_ns
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->hash 2-2147483646
PARAM_VALUE 0 kn->ns 0,4096-ptr_max
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get_ns
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
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_remove() -> kernfs_put()

Type Parameter Key Value
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 global &rdtgroup_mutex

fs/resctrl/rdtgroup.c resctrl_bmec_files_show() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 kn->attr.open->nr_to_release 0-4294967295
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &rdtgroup_mutex
HALF_LOCKED2 &of->mutex

fs/resctrl/rdtgroup.c resctrl_bmec_files_show() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 kn->attr.open->nr_to_release 0-4294967295
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &rdtgroup_mutex
HALF_LOCKED2 &of->mutex

fs/resctrl/rdtgroup.c resctrl_bmec_files_show() -> kernfs_put()

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
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
LOCK2 global &rdtgroup_mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

fs/kernfs/inode.c kernfs_evict_inode() -> kernfs_put()

Type Parameter Key Value
BUF_SIZE 0 kn s32min-(-2),1-s32max
BUF_SIZE 0 kn s32min-(-2),1-s32max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 kn unit_array_size

fs/sysfs/file.c sysfs_add_file_to_group() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->priv->ktype 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_T->lock->msi.data->mutex
HALF_LOCKED2 &hisi_ptt->filter_lock
HALF_LOCKED2 _T->lock

fs/sysfs/file.c sysfs_chmod_file() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex

fs/sysfs/file.c sysfs_file_change_owner() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/file.c sysfs_link_change_owner() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 0,4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->hash 2-2147483646
PARAM_VALUE 0 kn->ns 0,4096-ptr_max
DATA_SOURCE 0 kn r kernfs_find_and_get_ns
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/file.c sysfs_notify() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &chip->mutex
HALF_LOCKED2 &client->dev.driver_data->update_lock
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &dp->lock
HALF_LOCKED2 &gb->mutex
HALF_LOCKED2 &hdev->dev.mutex
HALF_LOCKED2 &intf->dev.parent->mutex
HALF_LOCKED2 &occ->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &port_dev->status_lock
HALF_LOCKED2 &priv->access_lock
HALF_LOCKED2 &sbefifo->lock
HALF_LOCKED2 &sbi->s_error_notify_mutex
HALF_LOCKED2 &tu->serialize
HALF_LOCKED2 &wblock->notify_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &console_sem

fs/sysfs/file.c sysfs_notify() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &chip->mutex
HALF_LOCKED2 &client->dev.driver_data->update_lock
HALF_LOCKED2 &dev->mutex
HALF_LOCKED2 &dp->lock
HALF_LOCKED2 &gb->mutex
HALF_LOCKED2 &hdev->dev.mutex
HALF_LOCKED2 &intf->dev.parent->mutex
HALF_LOCKED2 &occ->lock
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &port_dev->status_lock
HALF_LOCKED2 &priv->access_lock
HALF_LOCKED2 &sbefifo->lock
HALF_LOCKED2 &sbi->s_error_notify_mutex
HALF_LOCKED2 &tu->serialize
HALF_LOCKED2 &wblock->notify_lock
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &console_sem

fs/sysfs/file.c sysfs_remove_file_from_group() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &_T->lock->msi.data->mutex
HALF_LOCKED2 &hisi_ptt->filter_lock

fs/sysfs/file.c sysfs_remove_file_self() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
CAPPED_DATA 0 kn 1
DATA_SOURCE 0 kn r kernfs_find_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &sess->lock

fs/sysfs/file.c sysfs_unbreak_active_protection() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->dep_map->name 0-255
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

kernel/cgroup/cgroup.c __cgroup_get_from_id() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->active.counter 0-s32max
PARAM_VALUE 0 kn->count.counter 0-s32max
DATA_SOURCE 0 kn r kernfs_find_and_get_node_by_id
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/cgroup/cgroup.c __cgroup_get_from_id() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->active.counter 0-s32max
PARAM_VALUE 0 kn->count.counter 0-s32max
PARAM_VALUE 0 kn->priv 0,4096-ptr_max
DATA_SOURCE 0 kn r kernfs_find_and_get_node_by_id
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/cgroup/cgroup.c cgroup_file_notify() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &cgroup_mutex
HALF_LOCKED2 global &css_set_lock
HALF_LOCKED2 global &rdmacg_mutex

kernel/cgroup/cgroup.c cgroup_file_show() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 0,4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
PARAM_VALUE 0 kn->attr.open->nr_mmapped 0-4294967295
PARAM_VALUE 0 kn->attr.open->nr_to_release 0-4294967295
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &of->mutex
LOCK2 global &cgroup_mutex
HALF_LOCKED2 &of->prealloc_mutex
HALF_LOCKED2 &pool->lock
TYPE_LOCK (struct kernfs_open_file)->mutex

kernel/cgroup/cgroup.c cgroup_get_from_path() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->priv 0,4096-ptr_max
DATA_SOURCE 0 kn r kernfs_walk_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

kernel/cgroup/cgroup.c cgroup_path_from_kernfs_id() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
CAPPED_DATA 0 kn 1
DATA_SOURCE 0 kn r kernfs_find_and_get_node_by_id
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &iter->mutex
HALF_LOCKED2 flags

kernel/cgroup/cgroup.c css_free_rwork_fn() -> kernfs_put()

Type Parameter Key Value
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

drivers/md/md-bitmap.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 1-u64max
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mddev->reconfig_mutex

drivers/cxl/core/memdev.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/acpi/nfit/core.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &acpi_desc->init_mutex
HALF_LOCKED2 _T->lock

fs/sysfs/dir.c sysfs_rename_dir_ns() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 0
PARAM_VALUE 0 kn->__parent 0
BUF_SIZE 0 kn 0
DATA_SOURCE 0 kn r kernfs_get_parent
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev_replace->lock_finishing_cancel_unmount
HALF_LOCKED2 &sb->s_umount
HALF_LOCKED2 global &pci_slot_mutex
HALF_LOCKED2 global &uuid_mutex

fs/sysfs/symlink.c sysfs_do_create_link_sd() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/symlink.c sysfs_rename_link_ns() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 0,4096-ptr_max
PARAM_VALUE 0 kn->hash 2-2147483646
PARAM_VALUE 0 kn->ns 0,4096-ptr_max
DATA_SOURCE 0 kn r kernfs_find_and_get_ns
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c amdgpu_discovery_sysfs_early_init() -> kernfs_put()

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
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/gpu/drm/amd/amdgpu/amdgpu_discovery.c amdgpu_discovery_sysfs_init() -> kernfs_put()

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
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

lib/kobject.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &pool->lock

fs/sysfs/group.c compat_only_sysfs_link_entry_to_kobj() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c compat_only_sysfs_link_entry_to_kobj() -> kernfs_put()

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
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c compat_only_sysfs_link_entry_to_kobj() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c internal_create_group() -> kernfs_put()

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
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c internal_create_group() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
CAPPED_DATA 0 kn 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c internal_create_group() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
CAPPED_DATA 0 kn 1
DATA_SOURCE 0 kn r kernfs_find_and_get
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c sysfs_add_link_to_group() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
CAPPED_DATA 0 kn 1
DATA_SOURCE 0 kn r kernfs_find_and_get
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &head->srcu
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &iommu_probe_device_lock

fs/sysfs/group.c sysfs_group_attrs_change_owner() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c sysfs_group_attrs_change_owner() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c sysfs_group_change_owner() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

fs/sysfs/group.c sysfs_merge_group() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
DATA_SOURCE 0 kn r kernfs_find_and_get
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mddev->reconfig_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &dev_pm_qos_sysfs_mtx

fs/sysfs/group.c sysfs_remove_group() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 0,4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
CAPPED_DATA 0 kn 1
NOCHECK_CALL

fs/sysfs/group.c sysfs_remove_link_from_group() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0
CAPPED_DATA 0 kn->hash 1
DATA_SOURCE 0 kn r kernfs_find_and_get
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &iommu_probe_device_lock

fs/sysfs/group.c sysfs_unmerge_group() -> kernfs_put()

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
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &mddev->reconfig_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 global &dev_pm_qos_sysfs_mtx

drivers/leds/led-class.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &dev->driver_input_lock
HALF_LOCKED2 &glights->lights_lock
HALF_LOCKED2 &hdev->driver_input_lock
HALF_LOCKED2 &hid->driver_input_lock
HALF_LOCKED2 &wl->mutex
HALF_LOCKED2 _T->lock
HALF_LOCKED2 global &iwlwifi_opmode_table_mtx

fs/kernfs/symlink.c kernfs_create_link() -> kernfs_put()

Type Parameter Key Value
PARAM_VALUE 0 kn 4096-ptr_max
PARAM_VALUE 0 kn->__parent 0,4096-ptr_max
PARAM_VALUE 0 kn->active.counter (-2147483647)
PARAM_VALUE 0 kn->count.counter 1
PARAM_VALUE 0 kn->flags 4
PARAM_VALUE 0 kn->hash 2-2147483646
PARAM_VALUE 0 kn->name 4096-ptr_max
PARAM_VALUE 0 kn->symlink.target_kn 4096-ptr_max
PARAM_VALUE 0 kn->symlink.target_kn->iattr 0,4096-ptr_max
CAPPED_DATA 0 kn 1
CAPPED_DATA 0 kn->name 1
DATA_SOURCE 0 kn r kernfs_new_node
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL

drivers/nvdimm/region.c sysfs_put() -> kernfs_put()

Type Parameter Key Value
DATA_SOURCE 0 kn $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dev->mutex
TYPE_LOCK (struct device)->mutex