Defined in 11 files as a macro:

Defined in 9 files as a function:

Referenced in 14 files:

Smatch caller information:

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

Type Parameter Key Value
PARAM_VALUE 0 regs 1-u64max
RX_PATH
TASK_NOT_RUNNING
LOCK2 &m->lock
LOCK2 &target->signal->exec_update_lock
TYPE_LOCK (struct seq_file)->lock
TYPE_LOCK (struct signal_struct)->exec_update_lock

kernel/ptrace.c ptrace_get_syscall_info() -> user_stack_pointer()

Type Parameter Key Value
PARAM_VALUE 0 regs 4096-ptr_max

kernel/events/core.c perf_output_sample_ustack() -> user_stack_pointer()

Type Parameter Key Value
PARAM_VALUE 0 regs 1-u64max
DATA_SOURCE 0 regs $2
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
LOCK2 rcu_read

kernel/events/core.c perf_ustack_task_size() -> user_stack_pointer()

Type Parameter Key Value
PARAM_VALUE 0 regs 1-u64max
DATA_SOURCE 0 regs $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 regs->ax 0-u64max
USER_DATA 0 regs->cx 0-u64max
USER_DATA 0 regs->r11 0-u64max
LOCK2 rcu_read

kernel/unwind/user.c unwind_user_start() -> user_stack_pointer()

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

kernel/trace/trace_uprobe.c get_user_stack_nth() -> user_stack_pointer()

Type Parameter Key Value
PARAM_VALUE 0 regs 4096-ptr_max
DATA_SOURCE 0 regs $0
RX_PATH
TASK_NOT_RUNNING
HALF_LOCKED2 &ucb->mutex

kernel/trace/trace_uprobe.c process_fetch_insn() -> user_stack_pointer()

Type Parameter Key Value
PARAM_VALUE 0 regs 4096-ptr_max
DATA_SOURCE 0 regs $1
RX_PATH
TASK_NOT_RUNNING

kernel/events/uprobes.c prepare_uretprobe() -> user_stack_pointer()

Type Parameter Key Value
PARAM_VALUE 0 regs 4096-ptr_max
CAPPED_DATA 0 regs->cs 1
DATA_SOURCE 0 regs $1
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 regs->ax 0-u64max
USER_DATA 0 regs->cx 0-u64max
USER_DATA 0 regs->r11 0-u64max
NO_OVERFLOW_SIMPLE 0 regs->dx