Documented in 2 files:

Defined in 1 files as a prototype:

Defined in 3 files as a function:

Referenced in 14 files:

Smatch caller information:

kernel/futex/core.c handle_futex_death() -> futex_wake()

Type Parameter Key Value
PARAM_VALUE 0 uaddr 0-ptr_max
PARAM_VALUE 1 flags 18
PARAM_VALUE 2 pop 0
PARAM_VALUE 3 nr_wake 1
PARAM_VALUE 4 bitset u32max
DATA_SOURCE 0 uaddr $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &curr->futex.exit_mutex
TYPE_LOCK (struct futex_sched_data)->exit_mutex

kernel/futex/core.c handle_futex_death() -> futex_wake()

Type Parameter Key Value
PARAM_VALUE 1 flags 18
PARAM_VALUE 2 pop 0
PARAM_VALUE 3 nr_wake 1
PARAM_VALUE 4 bitset u32max
DATA_SOURCE 0 uaddr $0
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
NOCHECK_CALL
LOCK2 &curr->futex.exit_mutex
TYPE_LOCK (struct futex_sched_data)->exit_mutex

io_uring/futex.c io_futex_wake() -> futex_wake()

Type Parameter Key Value
PARAM_VALUE 1 flags 256-914
PARAM_VALUE 2 pop 0
BIT_INFO 1 flags 0x100,0xffffffff
RX_PATH
TASK_NOT_RUNNING

kernel/futex/syscalls.c __do_sys_futex_wake() -> futex_wake()

Type Parameter Key Value
PARAM_VALUE 1 flags 256-914
PARAM_VALUE 2 pop 0
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 3 nr_wake $2
DATA_SOURCE 4 bitset $1
BIT_INFO 1 flags 0x100,0x3ff
USER_DATA 1 flags 256-914[c]
USER_DATA 3 nr_wake s32min-s32max
USER_DATA 4 bitset 0-u32max

kernel/futex/syscalls.c __do_sys_futex_wake() -> futex_wake()

Type Parameter Key Value
PARAM_VALUE 1 flags 256-914
PARAM_VALUE 2 pop 0
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 3 nr_wake $2
DATA_SOURCE 4 bitset $1
BIT_INFO 1 flags 0x100,0x3ff
USER_DATA 1 flags 256-914[c]
USER_DATA 3 nr_wake s32min-s32max
USER_DATA 4 bitset 0-u32max

kernel/futex/syscalls.c do_futex() -> futex_wake()

Type Parameter Key Value
PARAM_VALUE 1 flags 2,18,34,50,1026,1042,1058,1074,2050,2066,2082,2098,3074,3090,3106,3122
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 1 flags r futex_to_flags
DATA_SOURCE 2 pop $4
DATA_SOURCE 3 nr_wake $2
DATA_SOURCE 4 bitset $6 [m]
USER_DATA 0 uaddr 0-u64max
USER_DATA 3 nr_wake s32min-s32max
USER_DATA 4 bitset 0-u32max