Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 4 files:

Smatch caller information:

net/core/filter.c bpf_dynptr_from_skb() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 type 3
PARAM_VALUE 3 offset 0
DATA_SOURCE 0 ptr $2
DATA_SOURCE 1 data $0
NOCHECK_CALL
UNITS 4 size unit_byte

net/core/filter.c bpf_dynptr_from_skb_meta() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 type 5
PARAM_VALUE 3 offset 0
PARAM_VALUE 4 size 0-255
DATA_SOURCE 0 ptr $2
DATA_SOURCE 1 data $0
NOCHECK_CALL

net/core/filter.c bpf_dynptr_from_xdp() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 type 4
PARAM_VALUE 3 offset 0
DATA_SOURCE 0 ptr $2
DATA_SOURCE 1 data $0
NOCHECK_CALL

kernel/bpf/verifier.c bpf_prog_verify_signature() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 0 ptr 3059486917537988608
PARAM_VALUE 1 data 1-18446744073709551614
PARAM_VALUE 2 type 1
PARAM_VALUE 3 offset 0
PARAM_VALUE 4 size 0-16777215
BUF_SIZE 1 data 0-16777215
BUF_SIZE 1 data 0-16777215
CAPPED_DATA 4 size 1
DATA_SOURCE 1 data r __kvmalloc_node_noprof
NOCHECK_CALL
UNITS 4 size unit_byte

kernel/bpf/verifier.c bpf_prog_verify_signature() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 0 ptr 1666707354881372160
PARAM_VALUE 1 data 1-ptr_max
PARAM_VALUE 2 type 1
PARAM_VALUE 3 offset 0
PARAM_VALUE 4 size 1-8192
BUF_SIZE 1 data (-1),1-8192
BUF_SIZE 1 data (-1),1-8192
CAPPED_DATA 4 size 1
DATA_SOURCE 1 data r kvmemdup_bpfptr_noprof
FUZZY_MAX 4 size 8192
HARD_MAX 4 size 8192
NOCHECK_CALL
USER_PTR 1 data

kernel/bpf/ringbuf.c ____bpf_ringbuf_reserve_dynptr() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 1 data 1-u64max
PARAM_VALUE 2 type 2
PARAM_VALUE 3 offset 0
PARAM_VALUE 4 size 0-16777215
DATA_SOURCE 0 ptr $3
DATA_SOURCE 1 data r __bpf_ringbuf_reserve
DATA_SOURCE 4 size $1
HARD_MAX 4 size 16777215
NOCHECK_CALL
NO_OVERFLOW_SIMPLE 4 size

kernel/bpf/ringbuf.c ____bpf_user_ringbuf_drain() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 0 ptr 2344944953590530048
PARAM_VALUE 1 *data (-4611686018427387904)-4611686018427387903
PARAM_VALUE 2 type 1
PARAM_VALUE 3 offset 0
PARAM_VALUE 4 size 0-16777215
NOCHECK_CALL

kernel/bpf/helpers.c ____bpf_dynptr_from_mem() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 2 type 1
PARAM_VALUE 3 offset 0
PARAM_VALUE 4 size 0-16777215
DATA_SOURCE 0 ptr $3
DATA_SOURCE 1 data $0
DATA_SOURCE 4 size $1
NOCHECK_CALL

kernel/bpf/helpers.c make_file_dynptr() -> bpf_dynptr_init()

Type Parameter Key Value
PARAM_VALUE 1 data 4096-ptr_max
PARAM_VALUE 2 type 6
PARAM_VALUE 3 offset 0
PARAM_VALUE 4 size 0
DATA_SOURCE 0 ptr $3
DATA_SOURCE 1 data r _kmalloc_nolock_noprof
NOCHECK_CALL