Defined in 1 files as a prototype:
Defined in 2 files as a function:
Referenced in 16 files:
- arch/arm64/kernel/process.c, line 808
- arch/arm64/kernel/stacktrace.c, line 494
- arch/loongarch/kernel/process.c, line 258
- arch/loongarch/kernel/traps.c, line 139
- arch/openrisc/kernel/stacktrace.c, line 90
- arch/powerpc/kernel/process.c, line 2356
- arch/riscv/kernel/stacktrace.c, line 175
- arch/s390/kernel/process.c, line 223
- arch/x86/kernel/process.c, line 1059
- fs/proc/array.c, line 510
- kernel/bpf/stackmap.c, line 901
- kernel/fork.c, line 2640
- kernel/sched/core.c
- kernel/stacktrace.c
- lib/syscall.c
- mm/kmemleak.c, line 1753
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 |