Defined in 1 files as a prototype:

Defined in 2 files as a function:

Referenced in 11 files:

Smatch caller information:

drivers/net/netkit.c netkit_link_init() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 13
PARAM_VALUE 2 ops 1799189109274214400
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 54-55
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $4
NOCHECK_CALL
LOCK2 global &rtnl_mutex

kernel/bpf/net_namespace.c netns_bpf_link_create() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 5
PARAM_VALUE 2 ops 7119637189140779008
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 17,36
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $1
NOCHECK_CALL

kernel/bpf/bpf_iter.c bpf_iter_link_attach() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 4
PARAM_VALUE 2 ops 3017113651303489536
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 3-7,16-18,23-28,37-38,43,58-61
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 3 prog->type 1
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $2
NOCHECK_CALL

kernel/bpf/syscall.c bpf_perf_link_attach() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 7
PARAM_VALUE 2 ops 7137865074645016576
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 41
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
DATA_SOURCE 3 prog $1
NOCHECK_CALL

kernel/bpf/syscall.c bpf_tramp_link_init() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 0,2,9
PARAM_VALUE 2 ops 240261215668076544,477815394481135616,8751191128834908160
PARAM_VALUE 3 prog 4096-ptr_max
BUF_SIZE 3 prog s32min-(-2),0-s32max
BUF_SIZE 3 prog s32min-(-2),0-s32max
DATA_SOURCE 1 type $1
DATA_SOURCE 2 ops $2
DATA_SOURCE 3 prog $3
DATA_SOURCE 4 attach_type $4
HARD_MAX 1 type 9
NOCHECK_CALL
HALF_LOCKED2 &st_map->lock
HALF_LOCKED2 global &cgroup_mutex

net/netfilter/nf_bpf_link.c bpf_nf_link_attach() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 10
PARAM_VALUE 2 ops 6685125013227692032
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 45
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
DATA_SOURCE 3 prog $1
NOCHECK_CALL

kernel/bpf/cgroup.c cgroup_bpf_link_attach() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 3
PARAM_VALUE 2 ops 3898327010616107008
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 0-43,45-u32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 3 prog->type 1
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $1
NOCHECK_CALL

net/core/sock_map.c sock_map_link_create() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 14
PARAM_VALUE 2 ops 8439884197135114240
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 3-7,16-18,23-28,37-38,43,58-61
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 3 prog->type 1
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $1
NOCHECK_CALL

kernel/trace/bpf_trace.c bpf_kprobe_multi_link_attach() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 8
PARAM_VALUE 2 ops 380385164691017728
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 42,56
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $1
BIT_INFO 4 attach_type 0x28,0x3a
NOCHECK_CALL

kernel/trace/bpf_trace.c bpf_tracing_multi_attach() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 1-18446744073709551614
PARAM_VALUE 1 type 15
PARAM_VALUE 2 ops 108560119638482944
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 59-61
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 3 prog->expected_attach_type 1
CAPPED_DATA 3 prog->type 1
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $0
NOCHECK_CALL

kernel/trace/bpf_trace.c bpf_uprobe_multi_link_attach() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 12
PARAM_VALUE 2 ops 6826151127873056768
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 48,57
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $1
BIT_INFO 4 attach_type 0x30,0x3f
NOCHECK_CALL

kernel/bpf/bpf_struct_ops.c bpf_struct_ops_link_create() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 9
PARAM_VALUE 2 ops 8299489902341242880
PARAM_VALUE 3 prog 0
PARAM_VALUE 4 attach_type 44
NOCHECK_CALL

net/core/dev.c bpf_xdp_link_attach() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 6
PARAM_VALUE 2 ops 7343517155048247296
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 3-7,16-18,23-28,37-38,43,58-61
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $1
NOCHECK_CALL
LOCK2 global &rtnl_mutex

kernel/bpf/tcx.c tcx_link_init() -> bpf_link_init()

Type Parameter Key Value
PARAM_VALUE 0 link 4096-ptr_max
PARAM_VALUE 1 type 11
PARAM_VALUE 2 ops 9106235090037911552
PARAM_VALUE 3 prog 4096-ptr_max
PARAM_VALUE 4 attach_type 46-47
BUF_SIZE 3 prog s32min-(-2),1-s32max
BUF_SIZE 3 prog s32min-(-2),1-s32max
CAPPED_DATA 4 attach_type 1
DATA_SOURCE 3 prog $4
BIT_INFO 4 attach_type 0x2e,0x2f
NOCHECK_CALL
LOCK2 global &rtnl_mutex