Defined in 1 files as a function:

Referenced in 1 files:

Smatch caller information:

fs/configfs/dir.c configfs_mkdir() -> unlink_group()

Type Parameter Key Value
PARAM_VALUE 0 group 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_alias.pprev 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_flags 0,134217728-u32max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_fsdata 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_fsdata->s_frag->frag_count.counter s32min-s32max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_hash.next 0,4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_hash.pprev 1-u64max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.dep_map->name 0-255
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->handoff_set 1
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 group->cg_item.ci_dentry->d_sb 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_entry.next 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev->next 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev->next->next 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_parent 4096-ptr_max
PARAM_VALUE 0 group->cg_subsys 1-u64max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &subsys->su_mutex
HALF_LOCKED2 &dentry->d_lockref.lock
TYPE_LOCK (struct configfs_subsystem)->su_mutex

fs/configfs/dir.c configfs_register_group() -> unlink_group()

Type Parameter Key Value
PARAM_VALUE 0 group 4096-ptr_max
PARAM_VALUE 0 group->cg_children.next 4096-ptr_max
PARAM_VALUE 0 group->cg_children.prev 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_alias.pprev 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_flags 0,134217728-u32max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_fsdata 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_fsdata->s_frag->frag_count.counter s32min-s32max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_hash.next 0,4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_hash.pprev 1-u64max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.dep_map->name 0-255
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.osq.tail.counter 0-s32max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_parent 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_entry.next 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev->next 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev->next->next 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_parent 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_type 4096-ptr_max
PARAM_VALUE 0 group->cg_subsys 1-u64max
PARAM_VALUE 0 group->default_groups.next 4096-ptr_max
PARAM_VALUE 0 group->default_groups.prev 4096-ptr_max
BUF_SIZE 0 group (-1),136
BUF_SIZE 0 group (-1),136
DATA_SOURCE 0 group $1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &subsys->su_mutex
HALF_LOCKED2 &of->mutex
TYPE_LOCK (struct configfs_subsystem)->su_mutex

fs/configfs/dir.c configfs_register_subsystem() -> unlink_group()

Type Parameter Key Value
PARAM_VALUE 0 group 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 group->cg_item.ci_entry.next 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev->next 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_group->cg_children.prev->next->next 4096-ptr_max
PARAM_VALUE 0 group->cg_subsys 1-u64max
BUF_SIZE 0 group 136
BUF_SIZE 0 group->cg_item.ci_name (-1),20
NOCHECK_CALL
LOCK2 global &configfs_subsystem_mutex
HALF_LOCKED2 &dentry->d_lockref.lock

fs/configfs/dir.c configfs_rmdir() -> unlink_group()

Type Parameter Key Value
PARAM_VALUE 0 group 4096-ptr_max
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &dentry->d_inode->i_rwsem
LOCK2 &subsys->su_mutex
HALF_LOCKED2 &dentry->d_lockref.lock
HALF_LOCKED2 &dentry->d_sb->s_vfs_rename_mutex
HALF_LOCKED2 &dir->d_inode->i_rwsem
HALF_LOCKED2 &dir->i_rwsem
TYPE_LOCK (struct configfs_subsystem)->su_mutex
TYPE_LOCK (struct inode)->i_rwsem

fs/configfs/dir.c configfs_unregister_group() -> unlink_group()

Type Parameter Key Value
PARAM_VALUE 0 group 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry 0,4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 0 group->cg_item.ci_dentry->d_inode->i_rwsem.first_waiter->type 0-1
PARAM_VALUE 0 group->cg_item.ci_parent 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_parent->ci_dentry 4096-ptr_max
PARAM_VALUE 0 group->cg_subsys->su_mutex.dep_map->name 0-255
PARAM_VALUE 0 group->cg_subsys->su_mutex.first_waiter 0,4096-ptr_max
PARAM_VALUE 0 group->cg_subsys->su_mutex.first_waiter->list.prev->next 5159360019465732096
PARAM_VALUE 0 group->cg_subsys->su_mutex.first_waiter->task->blocked_on 0
PARAM_VALUE 0 group->cg_subsys->su_mutex.osq.tail.counter 0-s32max
PARAM_VALUE 0 group->cg_subsys->su_mutex.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 group->cg_subsys->su_mutex.wait_lock.owner (-1)
PARAM_VALUE 0 group->cg_subsys->su_mutex.wait_lock.owner_cpu u32max
BUF_SIZE 0 group (-1),136
BUF_SIZE 0 group (-1),136
BUF_SIZE 0 group->cg_item.ci_type (-1),40
DATA_SOURCE 0 group $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &subsys->su_mutex
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 _T->lock
TYPE_LOCK (struct configfs_subsystem)->su_mutex

fs/configfs/dir.c configfs_unregister_subsystem() -> unlink_group()

Type Parameter Key Value
PARAM_VALUE 0 group 4096-ptr_max
PARAM_VALUE 0 group->cg_item.ci_dentry 0,4096-ptr_max
BUF_SIZE 0 group 136
NOCHECK_CALL
LOCK2 global &configfs_subsystem_mutex

fs/configfs/dir.c unlink_group() -> unlink_group()

Type Parameter Key Value
PARAM_VALUE 0 group 4096-ptr_max
CAPPED_DATA 0 &group->group_entry 1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &subsys->su_mutex
HALF_LOCKED2 global &configfs_subsystem_mutex