Documented in 1 files:

Defined in 1 files as a prototype:

Defined in 1 files as a function:

Referenced in 3 files:

Smatch caller information:

kernel/futex/waitwake.c futex_wait_multiple_setup() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 2 key 4096-ptr_max
PARAM_VALUE 3 rw 0
RX_PATH
TASK_NOT_RUNNING

kernel/futex/waitwake.c futex_wait_setup() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 2 key 4096-ptr_max
PARAM_VALUE 3 rw 0
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 1 flags $2
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 uaddr 0-u64max
USER_DATA 1 flags 0-2,16-18,128-130,144-146,512-514,528-530,640-642,656-658[c]
USER_DATA 2 key->both.offset 0-4097[c]
USER_DATA 2 key->private.address 0-u64max

kernel/futex/waitwake.c futex_wake() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 1 flags 2,18,34,50,256-914,1026,1042,1058,1074,2050,2066,2082,2098,3074,3090,3106,3122
PARAM_VALUE 2 key 1891346489186770944
PARAM_VALUE 3 rw 0
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 1 flags $1
PREEMPT_ADD
RX_PATH
TASK_NOT_RUNNING
USER_DATA 0 uaddr 0-u64max
USER_DATA 1 flags 256-914[c]
HALF_LOCKED2 &curr->futex.exit_mutex

kernel/futex/waitwake.c futex_wake_op() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 1 flags 2,18,34,50,1026,1042,1058,1074,2050,2066,2082,2098,3074,3090,3106,3122
PARAM_VALUE 2 key 9051648802209701888
PARAM_VALUE 3 rw 0
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 1 flags $1
BIT_INFO 1 flags 0x0,0xbff
RX_PATH
USER_DATA 0 uaddr 0-u64max
USER_DATA 2 key->both.offset 0-4097[c]
USER_DATA 2 key->private.address 0-u64max

kernel/futex/waitwake.c futex_wake_op() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 1 flags 2,18,34,50,1026,1042,1058,1074,2050,2066,2082,2098,3074,3090,3106,3122
PARAM_VALUE 2 key 7846713671478034432
PARAM_VALUE 3 rw 1
DATA_SOURCE 0 uaddr $2
DATA_SOURCE 1 flags $1
BIT_INFO 1 flags 0x0,0xbff
RX_PATH
USER_DATA 0 uaddr 0-u64max
USER_DATA 2 key->both.offset 0-4097[c]
USER_DATA 2 key->private.address 0-u64max

kernel/futex/pi.c __futex_unlock_pi() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 1 flags 2,18,34,50,1026,1042,1058,1074,2050,2066,2082,2098,3074,3090,3106,3122
PARAM_VALUE 2 key 4411348733172424704
PARAM_VALUE 3 rw 1
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 1 flags $1
RX_PATH
USER_DATA 0 uaddr 0-u64max
USER_DATA 2 key->both.offset 0-4097[c]
USER_DATA 2 key->private.address 0-u64max

kernel/futex/pi.c futex_lock_pi() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 1 flags 2,18,34,50,1026,1042,1058,1074,2050,2066,2082,2098,3074,3090,3106,3122
PARAM_VALUE 2 key 7813435272794184
PARAM_VALUE 3 rw 1
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 1 flags $1
BIT_INFO 1 flags 0x0,0xbff
RX_PATH
USER_DATA 0 uaddr 0-u64max
USER_DATA 2 key->both.offset 0-4097[c]
USER_DATA 2 key->private.address 0-u64max

kernel/futex/requeue.c futex_requeue() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 2 key 1243476984434212864
PARAM_VALUE 3 rw 0
DATA_SOURCE 0 uaddr $0
DATA_SOURCE 1 flags $1
RX_PATH
USER_DATA 0 uaddr 0-u64max
USER_DATA 2 key->both.offset 0-4097[c]
USER_DATA 2 key->private.address 0-u64max

kernel/futex/requeue.c futex_requeue() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 2 key 3941447340228022272
PARAM_VALUE 3 rw 0-1
DATA_SOURCE 0 uaddr $2
DATA_SOURCE 1 flags $3
FUZZY_MAX 3 rw 1
HARD_MAX 3 rw 1
RX_PATH
USER_DATA 0 uaddr 0-u64max
USER_DATA 2 key->both.offset 0-4097[c]
USER_DATA 2 key->private.address 0-u64max

kernel/futex/requeue.c futex_wait_requeue_pi() -> get_futex_key()

Type Parameter Key Value
PARAM_VALUE 1 flags 2,18,34,50,1026,1042,1058,1074,2050,2066,2082,2098,3074,3090,3106,3122
PARAM_VALUE 2 key 2277097249293230080
PARAM_VALUE 3 rw 1
DATA_SOURCE 0 uaddr $5
DATA_SOURCE 1 flags $1
BIT_INFO 1 flags 0x0,0xbff
RX_PATH
USER_DATA 0 uaddr 0-u64max