Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 16 files:

Smatch caller information:

lib/syscall.c collect_syscall() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->alloc_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tsk->signal 4096-ptr_max
PARAM_VALUE 0 tsk->signal->exec_update_lock.dep_map->name 0-255
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 tsk->stack_refcount.refs.counter (-1073741824),0-s32max
CAPPED_DATA 0 tsk 1
DATA_SOURCE 0 tsk $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &m->lock
LOCK2 0 &tsk->signal->exec_update_lock
TYPE_LOCK (struct seq_file)->lock
TYPE_LOCK (struct signal_struct)->exec_update_lock

lib/syscall.c collect_syscall() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->alloc_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tsk->signal 4096-ptr_max
PARAM_VALUE 0 tsk->signal->exec_update_lock.dep_map->name 0-255
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 tsk->stack_refcount.refs.counter (-1073741824),0-s32max
CAPPED_DATA 0 tsk 1
DATA_SOURCE 0 tsk $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &m->lock
LOCK2 0 &tsk->signal->exec_update_lock
TYPE_LOCK (struct seq_file)->lock
TYPE_LOCK (struct signal_struct)->exec_update_lock

kernel/bpf/stackmap.c __bpf_get_task_stack() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
CAPPED_DATA 0 tsk 1
DATA_SOURCE 0 tsk $0
NOCHECK_CALL

fs/proc/array.c do_task_stat() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->alloc_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tsk->flags 4-u32max
PARAM_VALUE 0 tsk->mm 4096-ptr_max
PARAM_VALUE 0 tsk->signal 4096-ptr_max
PARAM_VALUE 0 tsk->signal->exec_update_lock.dep_map->name 0-255
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 tsk->signal->exec_update_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 tsk->signal->exec_update_lock.wait_lock.owner (-1)
PARAM_VALUE 0 tsk->signal->exec_update_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 tsk->stack_refcount.refs.counter (-1073741824),0-s32max
DATA_SOURCE 0 tsk $3
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &m->lock
LOCK2 0 &tsk->signal->exec_update_lock
TYPE_LOCK (struct seq_file)->lock
TYPE_LOCK (struct signal_struct)->exec_update_lock

arch/x86/kernel/process.c __get_wchan() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->__state 1-511,513-u32max
PARAM_VALUE 0 tsk->alloc_lock.rlock.dep_map->name 0-255
PARAM_VALUE 0 tsk->on_rq 0
PARAM_VALUE 0 tsk->pi_lock.dep_map->name 0-255
PARAM_VALUE 0 tsk->pi_lock.owner_cpu 0
PARAM_VALUE 0 tsk->pi_lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 0 tsk->signal 4096-ptr_max
PARAM_VALUE 0 tsk->signal->exec_update_lock.dep_map->name 0-255
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->list.next 2212933610777083904
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->list.prev 2212933610777083904
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 tsk->signal->exec_update_lock.wait_lock.dep_map->name 0-255
PARAM_VALUE 0 tsk->signal->exec_update_lock.wait_lock.owner (-1)
PARAM_VALUE 0 tsk->signal->exec_update_lock.wait_lock.owner_cpu u32max
PARAM_VALUE 0 tsk->signal->exec_update_lock.wait_lock.raw_lock.val.counter 0-s32max
PARAM_VALUE 0 tsk->stack_refcount.refs.counter (-1073741824),0-s32max
CAPPED_DATA 0 tsk 1
DATA_SOURCE 0 tsk $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &m->lock
LOCK2 irq
LOCK2 0 &tsk->pi_lock
LOCK2 0 &tsk->signal->exec_update_lock
TYPE_LOCK (struct seq_file)->lock
TYPE_LOCK (struct signal_struct)->exec_update_lock
TYPE_LOCK (struct task_struct)->pi_lock

kernel/stacktrace.c stack_trace_save_tsk() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 tsk->signal->exec_update_lock.first_waiter->type 0-1
PARAM_VALUE 0 tsk->stack_refcount.refs.counter (-1073741824),0-s32max
CAPPED_DATA 0 tsk 1
DATA_SOURCE 0 tsk $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
HALF_LOCKED2 &m->lock
HALF_LOCKED2 0 &tsk->signal->exec_update_lock

kernel/stacktrace.c stack_trace_save_tsk_reliable() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->stack_refcount.refs.counter (-1073741824),0-s32max
CAPPED_DATA 0 tsk 1
DATA_SOURCE 0 tsk $0
NOCHECK_CALL

mm/kmemleak.c kmemleak_scan_task_stacks() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->stack_refcount.refs.counter (-1073741824),0-s32max
DATA_SOURCE 0 tsk r pid_task
NOCHECK_CALL
LOCK2 global &scan_mutex

kernel/sched/core.c finish_task_switch() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->__state 128
PARAM_VALUE 0 tsk->cg_list.next->next 4096-ptr_max
PARAM_VALUE 0 tsk->cg_list.next->prev 4096-ptr_max
PARAM_VALUE 0 tsk->cg_list.prev->next 4096-ptr_max
PARAM_VALUE 0 tsk->cg_list.prev->prev 4096-ptr_max
PARAM_VALUE 0 tsk->cgroups 4096-ptr_max
PARAM_VALUE 0 tsk->cgroups->dying_tasks.prev 4096-ptr_max
PARAM_VALUE 0 tsk->cgroups->dying_tasks.prev->next 4096-ptr_max
PARAM_VALUE 0 tsk->cgroups->dying_tasks.prev->next->next 4096-ptr_max
PARAM_VALUE 0 tsk->on_cpu 0
PARAM_VALUE 0 tsk->sched_class 4096-ptr_max
PARAM_VALUE 0 tsk->sched_class->task_dead 0,6742757381008068608
CAPPED_DATA 0 tsk->cgroups 1
DATA_SOURCE 0 tsk $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 tsk unit_byte

kernel/sched/core.c sched_show_task() -> put_task_stack()

Type Parameter Key Value
PARAM_VALUE 0 tsk 4096-ptr_max
PARAM_VALUE 0 tsk->signal->oom_mm->mmap_lock.first_waiter->handoff_set 0-1
PARAM_VALUE 0 tsk->signal->oom_mm->mmap_lock.first_waiter->type 0-1
PARAM_VALUE 0 tsk->stack_refcount.refs.counter (-1073741824),0-s32max
DATA_SOURCE 0 tsk $0
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
UNITS 0 tsk unit_byte
HALF_LOCKED2 &pool->lock
HALF_LOCKED2 &rnp->lock
HALF_LOCKED2 &rtp->tasks_gp_mutex
HALF_LOCKED2 flags
HALF_LOCKED2 global &system_transition_mutex
HALF_LOCKED2 global &tasklist_lock
HALF_LOCKED2 irq_flags