Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 2 files:

Smatch caller information:

kernel/cgroup/cgroup.c cgroup_procs_write_finish() -> cgroup_attach_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock_mode 0-2
PARAM_VALUE 1 tsk 4096-ptr_max
PARAM_VALUE 1 tsk->cg_list.next->prev 4096-ptr_max
PARAM_VALUE 1 tsk->cg_list.prev->next 4096-ptr_max
PARAM_VALUE 1 tsk->cgroups->mg_dst_cset->mg_node.next 4096-ptr_max
PARAM_VALUE 1 tsk->cgroups->mg_node.next 4096-ptr_max
PARAM_VALUE 1 tsk->cgroups->mg_node.prev 4096-ptr_max
PARAM_VALUE 1 tsk->cgroups->mg_tasks.prev 4096-ptr_max
PARAM_VALUE 1 tsk->cgroups->mg_tasks.prev->next 4096-ptr_max
PARAM_VALUE 1 tsk->cgroups->mg_tasks.prev->next->next 4096-ptr_max
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.dep_map->name 0-255
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.first_waiter->type 0-1
CAPPED_DATA 1 tsk 1
DATA_SOURCE 0 lock_mode $1
DATA_SOURCE 1 tsk $0
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_procs_write_start() -> cgroup_attach_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock_mode 0,2
PARAM_VALUE 1 tsk 4096-ptr_max
PARAM_VALUE 1 tsk->exit_signal s32min-(-1)
PARAM_VALUE 1 tsk->group_leader->exit_signal s32min-(-1)
PARAM_VALUE 1 tsk->no_cgroup_migration 0
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.dep_map->name 0-255
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.first_waiter->handoff_set 0-1
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.first_waiter->list.next 2624917664208203776
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.first_waiter->list.prev 2624917664208203776
PARAM_VALUE 1 tsk->signal->cgroup_threadgroup_rwsem.first_waiter->type 0-1
BIT_INFO 0 lock_mode 0x0,0x2
BIT_INFO 1 tsk->flags 0x0,0xfbffffff
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_update_dfl_csses() -> cgroup_attach_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock_mode 0-1
PARAM_VALUE 1 tsk 0
FUZZY_MAX 0 lock_mode 1
HARD_MAX 0 lock_mode 1
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &of->mutex
HALF_LOCKED2 &pool->lock

kernel/cgroup/cgroup-v1.c cgroup_attach_task_all() -> cgroup_attach_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock_mode 0
PARAM_VALUE 1 tsk 0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 global &cgroup_mutex

kernel/cgroup/cgroup-v1.c cgroup_transfer_tasks() -> cgroup_attach_unlock()

Type Parameter Key Value
PARAM_VALUE 0 lock_mode 0
PARAM_VALUE 1 tsk 0
NOCHECK_CALL
LOCK2 global &cgroup_mutex
HALF_LOCKED2 &pool->lock