diff options
| author | Paul Chaignon <paul@cilium.io> | 2020-04-12 15:17:23 +0200 |
|---|---|---|
| committer | Dmitry Vyukov <dvyukov@google.com> | 2020-04-12 17:03:47 +0200 |
| commit | 17a986e54c507287c078a70fa9eea0be9f191f84 (patch) | |
| tree | c4061dddbffea5a09367815b9c28a74184939eb8 /sys/linux | |
| parent | 95536f1d7b7eb49d4c63258ad5ce160290a31d93 (diff) | |
sys/linux: add link_create and link_update commands
Signed-off-by: Paul Chaignon <paul@cilium.io>
Diffstat (limited to 'sys/linux')
| -rw-r--r-- | sys/linux/bpf.txt | 19 | ||||
| -rw-r--r-- | sys/linux/bpf_386.const | 2 | ||||
| -rw-r--r-- | sys/linux/bpf_amd64.const | 2 | ||||
| -rw-r--r-- | sys/linux/bpf_arm.const | 2 | ||||
| -rw-r--r-- | sys/linux/bpf_arm64.const | 2 | ||||
| -rw-r--r-- | sys/linux/bpf_mips64le.const | 2 | ||||
| -rw-r--r-- | sys/linux/bpf_ppc64le.const | 2 | ||||
| -rw-r--r-- | sys/linux/gen/386.go | 27 | ||||
| -rw-r--r-- | sys/linux/gen/amd64.go | 27 | ||||
| -rw-r--r-- | sys/linux/gen/arm.go | 27 | ||||
| -rw-r--r-- | sys/linux/gen/arm64.go | 27 | ||||
| -rw-r--r-- | sys/linux/gen/mips64le.go | 27 | ||||
| -rw-r--r-- | sys/linux/gen/ppc64le.go | 27 |
13 files changed, 187 insertions, 6 deletions
diff --git a/sys/linux/bpf.txt b/sys/linux/bpf.txt index 1dc507f9a..9ee63286c 100644 --- a/sys/linux/bpf.txt +++ b/sys/linux/bpf.txt @@ -15,6 +15,7 @@ resource fd_btf[fd] resource bpf_prog_id[int32]: 0, -1 resource bpf_map_id[int32]: 0, -1 resource bpf_btf_id[int32]: 0, -1 +resource fd_bpf_link[fd] # NEED: this is a random index in btf_header:types. We can't express this, so we just use a small index. type btf_type_id int32[1:5] @@ -57,6 +58,8 @@ bpf$MAP_LOOKUP_BATCH(cmd const[BPF_MAP_LOOKUP_BATCH], arg ptr[in, bpf_map_batch_ bpf$MAP_UPDATE_BATCH(cmd const[BPF_MAP_UPDATE_BATCH], arg ptr[in, bpf_map_batch_arg], size len[arg]) bpf$MAP_DELETE_BATCH(cmd const[BPF_MAP_DELETE_BATCH], arg ptr[in, bpf_map_batch_arg], size len[arg]) bpf$BPF_MAP_LOOKUP_AND_DELETE_BATCH(cmd const[BPF_MAP_LOOKUP_AND_DELETE_BATCH], arg ptr[in, bpf_map_batch_arg], size len[arg]) +bpf$BPF_LINK_CREATE(cmd const[BPF_LINK_CREATE], arg ptr[in, bpf_link_create_arg], size len[arg]) fd_bpf_link +bpf$BPF_LINK_UPDATE(cmd const[BPF_LINK_UPDATE], arg ptr[in, bpf_link_update_arg], size len[arg]) bpf_map_create_arg { type flags[bpf_map_type, int32] @@ -119,6 +122,20 @@ bpf_map_batch_arg { flags const[0, int64] } +bpf_link_create_arg { + prog_fd fd_bpf_prog + target_fd fd_cgroup + attach_type flags[bpf_attach_types_link_create, int32] + flags const[0, int32] +} + +bpf_link_update_arg { + link_fd fd_bpf_link + new_prog_fd fd_bpf_prog + flags flags[bpf_link_update_flags, int32] + old_prog_fd fd_bpf_prog +} + bpf_batch_flags = BPF_F_LOCK define BPF_LINE_INFO_SIZE sizeof(struct bpf_line_info) @@ -688,8 +705,10 @@ bpf_lookup_flags = BPF_F_LOCK bpf_prog_type = BPF_PROG_TYPE_SOCKET_FILTER, BPF_PROG_TYPE_KPROBE, BPF_PROG_TYPE_SCHED_CLS, BPF_PROG_TYPE_SCHED_ACT, BPF_PROG_TYPE_TRACEPOINT, BPF_PROG_TYPE_XDP, BPF_PROG_TYPE_PERF_EVENT, BPF_PROG_TYPE_CGROUP_SKB, BPF_PROG_TYPE_CGROUP_SOCK, BPF_PROG_TYPE_LWT_IN, BPF_PROG_TYPE_LWT_OUT, BPF_PROG_TYPE_LWT_XMIT, BPF_PROG_TYPE_SOCK_OPS, BPF_PROG_TYPE_SK_SKB, BPF_PROG_TYPE_CGROUP_DEVICE, BPF_PROG_TYPE_SK_MSG, BPF_PROG_TYPE_RAW_TRACEPOINT, BPF_PROG_TYPE_CGROUP_SOCK_ADDR, BPF_PROG_TYPE_LWT_SEG6LOCAL, BPF_PROG_TYPE_LIRC_MODE2, BPF_PROG_TYPE_SK_REUSEPORT, BPF_PROG_TYPE_FLOW_DISSECTOR, BPF_PROG_TYPE_CGROUP_SYSCTL, BPF_PROG_TYPE_RAW_TRACEPOINT_WRITABLE, BPF_PROG_TYPE_CGROUP_SOCKOPT, BPF_PROG_TYPE_TRACING, BPF_PROG_TYPE_EXT, BPF_PROG_TYPE_STRUCT_OPS, BPF_PROG_TYPE_LSM map_flags = BPF_F_NO_PREALLOC, BPF_F_NO_COMMON_LRU, BPF_F_NUMA_NODE, BPF_F_RDONLY, BPF_F_WRONLY, BPF_F_STACK_BUILD_ID, BPF_F_ZERO_SEED, BPF_F_RDONLY_PROG, BPF_F_WRONLY_PROG, BPF_F_CLONE, BPF_F_MMAPABLE bpf_attach_type = BPF_CGROUP_INET_INGRESS, BPF_CGROUP_INET_EGRESS, BPF_CGROUP_INET_SOCK_CREATE, BPF_CGROUP_SOCK_OPS, BPF_SK_SKB_STREAM_PARSER, BPF_SK_SKB_STREAM_VERDICT, BPF_CGROUP_DEVICE, BPF_SK_MSG_VERDICT, BPF_CGROUP_INET4_BIND, BPF_CGROUP_INET6_BIND, BPF_CGROUP_INET4_CONNECT, BPF_CGROUP_INET6_CONNECT, BPF_CGROUP_INET4_POST_BIND, BPF_CGROUP_INET6_POST_BIND, BPF_CGROUP_UDP4_SENDMSG, BPF_CGROUP_UDP6_SENDMSG, BPF_LIRC_MODE2, BPF_FLOW_DISSECTOR, BPF_CGROUP_SYSCTL, BPF_CGROUP_UDP4_RECVMSG, BPF_CGROUP_UDP6_RECVMSG, BPF_CGROUP_GETSOCKOPT, BPF_CGROUP_SETSOCKOPT, BPF_TRACE_RAW_TP, BPF_TRACE_FENTRY, BPF_TRACE_FEXIT, BPF_LSM_MAC, BPF_MODIFY_RETURN +bpf_attach_types_link_create = BPF_CGROUP_INET_INGRESS, BPF_CGROUP_INET_EGRESS, BPF_CGROUP_INET_SOCK_CREATE, BPF_CGROUP_INET4_POST_BIND, BPF_CGROUP_INET6_POST_BIND, BPF_CGROUP_INET4_BIND, BPF_CGROUP_INET6_BIND, BPF_CGROUP_INET4_CONNECT, BPF_CGROUP_INET6_CONNECT, BPF_CGROUP_UDP4_SENDMSG, BPF_CGROUP_UDP6_SENDMSG, BPF_CGROUP_UDP4_RECVMSG, BPF_CGROUP_UDP6_RECVMSG, BPF_CGROUP_SOCK_OPS, BPF_CGROUP_DEVICE, BPF_SK_MSG_VERDICT, BPF_SK_SKB_STREAM_PARSER, BPF_SK_SKB_STREAM_VERDICT, BPF_LIRC_MODE2, BPF_FLOW_DISSECTOR, BPF_CGROUP_SYSCTL, BPF_CGROUP_GETSOCKOPT, BPF_CGROUP_SETSOCKOPT bpf_prog_load_flags = BPF_F_STRICT_ALIGNMENT, BPF_F_ANY_ALIGNMENT, BPF_F_TEST_RND_HI32, BPF_F_TEST_STATE_FREQ bpf_attach_flags = BPF_F_ALLOW_OVERRIDE, BPF_F_ALLOW_MULTI, BPF_F_REPLACE +bpf_link_update_flags = BPF_F_REPLACE bpf_prog_query_flags = BPF_F_QUERY_EFFECTIVE bpf_prog_query_attach_type = BPF_CGROUP_INET_INGRESS, BPF_CGROUP_INET_EGRESS, BPF_CGROUP_INET_SOCK_CREATE, BPF_CGROUP_SOCK_OPS, BPF_CGROUP_DEVICE, BPF_CGROUP_INET4_BIND, BPF_CGROUP_INET4_CONNECT, BPF_CGROUP_INET4_POST_BIND, BPF_CGROUP_INET6_BIND, BPF_CGROUP_INET6_CONNECT, BPF_CGROUP_INET6_POST_BIND, BPF_CGROUP_UDP4_SENDMSG, BPF_CGROUP_UDP6_SENDMSG, BPF_LIRC_MODE2, BPF_CGROUP_SYSCTL, BPF_FLOW_DISSECTOR, BPF_CGROUP_UDP4_RECVMSG, BPF_CGROUP_UDP6_RECVMSG, BPF_CGROUP_GETSOCKOPT, BPF_CGROUP_SETSOCKOPT bpf_open_flags = BPF_F_RDONLY, BPF_F_WRONLY diff --git a/sys/linux/bpf_386.const b/sys/linux/bpf_386.const index d66961796..00a92d0b8 100644 --- a/sys/linux/bpf_386.const +++ b/sys/linux/bpf_386.const @@ -75,6 +75,8 @@ BPF_JSLT0 = 12 BPF_LD = 0 BPF_LDX = 1 BPF_LINE_INFO_SIZE = 16 +BPF_LINK_CREATE = 28 +BPF_LINK_UPDATE = 29 BPF_LIRC_MODE2 = 16 BPF_LSH0 = 6 BPF_LSM_MAC = 27 diff --git a/sys/linux/bpf_amd64.const b/sys/linux/bpf_amd64.const index 27a0d0543..b539fc0cb 100644 --- a/sys/linux/bpf_amd64.const +++ b/sys/linux/bpf_amd64.const @@ -75,6 +75,8 @@ BPF_JSLT0 = 12 BPF_LD = 0 BPF_LDX = 1 BPF_LINE_INFO_SIZE = 16 +BPF_LINK_CREATE = 28 +BPF_LINK_UPDATE = 29 BPF_LIRC_MODE2 = 16 BPF_LSH0 = 6 BPF_LSM_MAC = 27 diff --git a/sys/linux/bpf_arm.const b/sys/linux/bpf_arm.const index e37dcb9a1..1f1e1465a 100644 --- a/sys/linux/bpf_arm.const +++ b/sys/linux/bpf_arm.const @@ -75,6 +75,8 @@ BPF_JSLT0 = 12 BPF_LD = 0 BPF_LDX = 1 BPF_LINE_INFO_SIZE = 16 +BPF_LINK_CREATE = 28 +BPF_LINK_UPDATE = 29 BPF_LIRC_MODE2 = 16 BPF_LSH0 = 6 BPF_LSM_MAC = 27 diff --git a/sys/linux/bpf_arm64.const b/sys/linux/bpf_arm64.const index d737905bc..d3f42ac85 100644 --- a/sys/linux/bpf_arm64.const +++ b/sys/linux/bpf_arm64.const @@ -75,6 +75,8 @@ BPF_JSLT0 = 12 BPF_LD = 0 BPF_LDX = 1 BPF_LINE_INFO_SIZE = 16 +BPF_LINK_CREATE = 28 +BPF_LINK_UPDATE = 29 BPF_LIRC_MODE2 = 16 BPF_LSH0 = 6 BPF_LSM_MAC = 27 diff --git a/sys/linux/bpf_mips64le.const b/sys/linux/bpf_mips64le.const index 6ed99dbdb..b8f3a7c8a 100644 --- a/sys/linux/bpf_mips64le.const +++ b/sys/linux/bpf_mips64le.const @@ -75,6 +75,8 @@ BPF_JSLT0 = 12 BPF_LD = 0 BPF_LDX = 1 BPF_LINE_INFO_SIZE = 16 +BPF_LINK_CREATE = 28 +BPF_LINK_UPDATE = 29 BPF_LIRC_MODE2 = 16 BPF_LSH0 = 6 BPF_LSM_MAC = 27 diff --git a/sys/linux/bpf_ppc64le.const b/sys/linux/bpf_ppc64le.const index fba876d67..1633606c4 100644 --- a/sys/linux/bpf_ppc64le.const +++ b/sys/linux/bpf_ppc64le.const @@ -75,6 +75,8 @@ BPF_JSLT0 = 12 BPF_LD = 0 BPF_LDX = 1 BPF_LINE_INFO_SIZE = 16 +BPF_LINK_CREATE = 28 +BPF_LINK_UPDATE = 29 BPF_LIRC_MODE2 = 16 BPF_LSH0 = 6 BPF_LSM_MAC = 27 diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go index cc33f1817..c5aa69946 100644 --- a/sys/linux/gen/386.go +++ b/sys/linux/gen/386.go @@ -38,6 +38,7 @@ var resources_386 = []*ResourceDesc{ {Name: "fd_binder", Kind: []string{"fd", "fd_binder"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block", Kind: []string{"fd", "fd_block_trace", "fd_block"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block_trace", Kind: []string{"fd", "fd_block_trace"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_bpf_link", Kind: []string{"fd", "fd_bpf_link"}, Values: []uint64{18446744073709551615}}, {Name: "fd_bpf_map", Kind: []string{"fd", "fd_bpf_map"}, Values: []uint64{18446744073709551615, 1}}, {Name: "fd_bpf_prog", Kind: []string{"fd", "fd_bpf_prog"}, Values: []uint64{18446744073709551615}}, {Name: "fd_btf", Kind: []string{"fd", "fd_btf"}, Values: []uint64{18446744073709551615}}, @@ -1403,6 +1404,18 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, + {StructKey{Name: "bpf_link_create_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_create_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_types_link_create", FldName: "attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, + }}}, + {StructKey{Name: "bpf_link_update_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_update_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "link_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "new_prog_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_link_update_flags", FldName: "flags", TypeSize: 4}}, []uint64{4}, true}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "old_prog_fd", TypeSize: 4}}, + }}}, {StructKey{Name: "bpf_map_batch_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_batch_arg", TypeSize: 56}, Fields: []Type{ &PtrType{TypeCommon{TypeName: "ptr64", FldName: "in_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &PtrType{TypeCommon{TypeName: "ptr64", FldName: "out_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, @@ -49843,6 +49856,16 @@ var syscalls_386 = []*Syscall{ &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, &StructType{Key: StructKey{Name: "bpf_get_prog_info_arg"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Path: []string{"arg"}}, }}, + {NR: 357, Name: "bpf$BPF_LINK_CREATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 28}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, &StructType{Key: StructKey{Name: "bpf_link_create_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Path: []string{"arg"}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 357, Name: "bpf$BPF_LINK_UPDATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 29}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, &StructType{Key: StructKey{Name: "bpf_link_update_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Path: []string{"arg"}}, + }}, {NR: 357, Name: "bpf$BPF_MAP_FREEZE", CallName: "bpf", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 22}, &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", TypeSize: 4}}}, @@ -67927,6 +67950,8 @@ var consts_386 = []ConstValue{ {Name: "BPF_LD"}, {"BPF_LDX", 1}, {"BPF_LINE_INFO_SIZE", 16}, + {"BPF_LINK_CREATE", 28}, + {"BPF_LINK_UPDATE", 29}, {"BPF_LIRC_MODE2", 16}, {"BPF_LSH0", 6}, {"BPF_LSM_MAC", 27}, @@ -77594,4 +77619,4 @@ var consts_386 = []ConstValue{ {"ethtool_per_queue_op_size", 128}, } -const revision_386 = "ba2fdbbb8d55f63ed80890d4f6060394b061643e" +const revision_386 = "34c9461cacddf5b522920bfe9d7739b7e57ca590" diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index f7b9b0654..479487178 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -38,6 +38,7 @@ var resources_amd64 = []*ResourceDesc{ {Name: "fd_binder", Kind: []string{"fd", "fd_binder"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block", Kind: []string{"fd", "fd_block_trace", "fd_block"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block_trace", Kind: []string{"fd", "fd_block_trace"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_bpf_link", Kind: []string{"fd", "fd_bpf_link"}, Values: []uint64{18446744073709551615}}, {Name: "fd_bpf_map", Kind: []string{"fd", "fd_bpf_map"}, Values: []uint64{18446744073709551615, 1}}, {Name: "fd_bpf_prog", Kind: []string{"fd", "fd_bpf_prog"}, Values: []uint64{18446744073709551615}}, {Name: "fd_btf", Kind: []string{"fd", "fd_btf"}, Values: []uint64{18446744073709551615}}, @@ -1414,6 +1415,18 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, + {StructKey{Name: "bpf_link_create_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_create_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_types_link_create", FldName: "attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, + }}}, + {StructKey{Name: "bpf_link_update_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_update_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "link_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "new_prog_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_link_update_flags", FldName: "flags", TypeSize: 4}}, []uint64{4}, true}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "old_prog_fd", TypeSize: 4}}, + }}}, {StructKey{Name: "bpf_map_batch_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_batch_arg", TypeSize: 56}, Fields: []Type{ &PtrType{TypeCommon{TypeName: "ptr64", FldName: "in_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &PtrType{TypeCommon{TypeName: "ptr64", FldName: "out_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, @@ -50841,6 +50854,16 @@ var syscalls_amd64 = []*Syscall{ &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_get_prog_info_arg"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, }}, + {NR: 321, Name: "bpf$BPF_LINK_CREATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 28}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_link_create_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 321, Name: "bpf$BPF_LINK_UPDATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 29}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_link_update_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, + }}, {NR: 321, Name: "bpf$BPF_MAP_FREEZE", CallName: "bpf", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 22}, &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", TypeSize: 4}}}, @@ -68953,6 +68976,8 @@ var consts_amd64 = []ConstValue{ {Name: "BPF_LD"}, {"BPF_LDX", 1}, {"BPF_LINE_INFO_SIZE", 16}, + {"BPF_LINK_CREATE", 28}, + {"BPF_LINK_UPDATE", 29}, {"BPF_LIRC_MODE2", 16}, {"BPF_LSH0", 6}, {"BPF_LSM_MAC", 27}, @@ -78634,4 +78659,4 @@ var consts_amd64 = []ConstValue{ {"ethtool_per_queue_op_size", 128}, } -const revision_amd64 = "f07aa6db9e1d75799b08332473879aa587a35002" +const revision_amd64 = "410cd852480d3d0ee8998d07d4ce5fb187c7dc1b" diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go index 1d72c7861..217c083bb 100644 --- a/sys/linux/gen/arm.go +++ b/sys/linux/gen/arm.go @@ -38,6 +38,7 @@ var resources_arm = []*ResourceDesc{ {Name: "fd_binder", Kind: []string{"fd", "fd_binder"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block", Kind: []string{"fd", "fd_block_trace", "fd_block"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block_trace", Kind: []string{"fd", "fd_block_trace"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_bpf_link", Kind: []string{"fd", "fd_bpf_link"}, Values: []uint64{18446744073709551615}}, {Name: "fd_bpf_map", Kind: []string{"fd", "fd_bpf_map"}, Values: []uint64{18446744073709551615, 1}}, {Name: "fd_bpf_prog", Kind: []string{"fd", "fd_bpf_prog"}, Values: []uint64{18446744073709551615}}, {Name: "fd_btf", Kind: []string{"fd", "fd_btf"}, Values: []uint64{18446744073709551615}}, @@ -1410,6 +1411,18 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, + {StructKey{Name: "bpf_link_create_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_create_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_types_link_create", FldName: "attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, + }}}, + {StructKey{Name: "bpf_link_update_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_update_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "link_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "new_prog_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_link_update_flags", FldName: "flags", TypeSize: 4}}, []uint64{4}, true}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "old_prog_fd", TypeSize: 4}}, + }}}, {StructKey{Name: "bpf_map_batch_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_batch_arg", TypeSize: 56}, Fields: []Type{ &PtrType{TypeCommon{TypeName: "ptr64", FldName: "in_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &PtrType{TypeCommon{TypeName: "ptr64", FldName: "out_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, @@ -49742,6 +49755,16 @@ var syscalls_arm = []*Syscall{ &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, &StructType{Key: StructKey{Name: "bpf_get_prog_info_arg"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Path: []string{"arg"}}, }}, + {NR: 386, Name: "bpf$BPF_LINK_CREATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 28}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, &StructType{Key: StructKey{Name: "bpf_link_create_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Path: []string{"arg"}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 386, Name: "bpf$BPF_LINK_UPDATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 29}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, &StructType{Key: StructKey{Name: "bpf_link_update_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 4}}, Path: []string{"arg"}}, + }}, {NR: 386, Name: "bpf$BPF_MAP_FREEZE", CallName: "bpf", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 4}}, Val: 22}, &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 4}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", TypeSize: 4}}}, @@ -67644,6 +67667,8 @@ var consts_arm = []ConstValue{ {Name: "BPF_LD"}, {"BPF_LDX", 1}, {"BPF_LINE_INFO_SIZE", 16}, + {"BPF_LINK_CREATE", 28}, + {"BPF_LINK_UPDATE", 29}, {"BPF_LIRC_MODE2", 16}, {"BPF_LSH0", 6}, {"BPF_LSM_MAC", 27}, @@ -77246,4 +77271,4 @@ var consts_arm = []ConstValue{ {"ethtool_per_queue_op_size", 128}, } -const revision_arm = "783b0fea1189d5d419ec1d36ba665ed69bb08fe4" +const revision_arm = "30e8968b79e122c7b00e8f1e06a2a7e806e2e484" diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go index 543c63033..62785d841 100644 --- a/sys/linux/gen/arm64.go +++ b/sys/linux/gen/arm64.go @@ -38,6 +38,7 @@ var resources_arm64 = []*ResourceDesc{ {Name: "fd_binder", Kind: []string{"fd", "fd_binder"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block", Kind: []string{"fd", "fd_block_trace", "fd_block"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block_trace", Kind: []string{"fd", "fd_block_trace"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_bpf_link", Kind: []string{"fd", "fd_bpf_link"}, Values: []uint64{18446744073709551615}}, {Name: "fd_bpf_map", Kind: []string{"fd", "fd_bpf_map"}, Values: []uint64{18446744073709551615, 1}}, {Name: "fd_bpf_prog", Kind: []string{"fd", "fd_bpf_prog"}, Values: []uint64{18446744073709551615}}, {Name: "fd_btf", Kind: []string{"fd", "fd_btf"}, Values: []uint64{18446744073709551615}}, @@ -1414,6 +1415,18 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, + {StructKey{Name: "bpf_link_create_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_create_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_types_link_create", FldName: "attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, + }}}, + {StructKey{Name: "bpf_link_update_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_update_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "link_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "new_prog_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_link_update_flags", FldName: "flags", TypeSize: 4}}, []uint64{4}, true}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "old_prog_fd", TypeSize: 4}}, + }}}, {StructKey{Name: "bpf_map_batch_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_batch_arg", TypeSize: 56}, Fields: []Type{ &PtrType{TypeCommon{TypeName: "ptr64", FldName: "in_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &PtrType{TypeCommon{TypeName: "ptr64", FldName: "out_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, @@ -50591,6 +50604,16 @@ var syscalls_arm64 = []*Syscall{ &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_get_prog_info_arg"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, }}, + {NR: 280, Name: "bpf$BPF_LINK_CREATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 28}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_link_create_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 280, Name: "bpf$BPF_LINK_UPDATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 29}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_link_update_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, + }}, {NR: 280, Name: "bpf$BPF_MAP_FREEZE", CallName: "bpf", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 22}, &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", TypeSize: 4}}}, @@ -68391,6 +68414,8 @@ var consts_arm64 = []ConstValue{ {Name: "BPF_LD"}, {"BPF_LDX", 1}, {"BPF_LINE_INFO_SIZE", 16}, + {"BPF_LINK_CREATE", 28}, + {"BPF_LINK_UPDATE", 29}, {"BPF_LIRC_MODE2", 16}, {"BPF_LSH0", 6}, {"BPF_LSM_MAC", 27}, @@ -77979,4 +78004,4 @@ var consts_arm64 = []ConstValue{ {"ethtool_per_queue_op_size", 128}, } -const revision_arm64 = "bf46f4dec6cdff6d8716d30aa800cd9e34e190f2" +const revision_arm64 = "384b3b89f01c3c7295dbf569731b6593f91f5e62" diff --git a/sys/linux/gen/mips64le.go b/sys/linux/gen/mips64le.go index e439d432d..df99105bb 100644 --- a/sys/linux/gen/mips64le.go +++ b/sys/linux/gen/mips64le.go @@ -38,6 +38,7 @@ var resources_mips64le = []*ResourceDesc{ {Name: "fd_binder", Kind: []string{"fd", "fd_binder"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block", Kind: []string{"fd", "fd_block_trace", "fd_block"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block_trace", Kind: []string{"fd", "fd_block_trace"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_bpf_link", Kind: []string{"fd", "fd_bpf_link"}, Values: []uint64{18446744073709551615}}, {Name: "fd_bpf_map", Kind: []string{"fd", "fd_bpf_map"}, Values: []uint64{18446744073709551615, 1}}, {Name: "fd_bpf_prog", Kind: []string{"fd", "fd_bpf_prog"}, Values: []uint64{18446744073709551615}}, {Name: "fd_btf", Kind: []string{"fd", "fd_btf"}, Values: []uint64{18446744073709551615}}, @@ -1411,6 +1412,18 @@ var structDescs_mips64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, + {StructKey{Name: "bpf_link_create_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_create_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_types_link_create", FldName: "attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, + }}}, + {StructKey{Name: "bpf_link_update_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_update_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "link_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "new_prog_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_link_update_flags", FldName: "flags", TypeSize: 4}}, []uint64{4}, true}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "old_prog_fd", TypeSize: 4}}, + }}}, {StructKey{Name: "bpf_map_batch_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_batch_arg", TypeSize: 56}, Fields: []Type{ &PtrType{TypeCommon{TypeName: "ptr64", FldName: "in_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &PtrType{TypeCommon{TypeName: "ptr64", FldName: "out_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, @@ -49684,6 +49697,16 @@ var syscalls_mips64le = []*Syscall{ &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_get_prog_info_arg"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, }}, + {NR: 5315, Name: "bpf$BPF_LINK_CREATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 28}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_link_create_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 5315, Name: "bpf$BPF_LINK_UPDATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 29}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_link_update_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, + }}, {NR: 5315, Name: "bpf$BPF_MAP_FREEZE", CallName: "bpf", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 22}, &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", TypeSize: 4}}}, @@ -67083,6 +67106,8 @@ var consts_mips64le = []ConstValue{ {Name: "BPF_LD"}, {"BPF_LDX", 1}, {"BPF_LINE_INFO_SIZE", 16}, + {"BPF_LINK_CREATE", 28}, + {"BPF_LINK_UPDATE", 29}, {"BPF_LIRC_MODE2", 16}, {"BPF_LSH0", 6}, {"BPF_LSM_MAC", 27}, @@ -75640,4 +75665,4 @@ var consts_mips64le = []ConstValue{ {"ethtool_per_queue_op_size", 128}, } -const revision_mips64le = "443886bc9231d590efa55b3ba8affda399315b60" +const revision_mips64le = "d894bf0b5099cf647389d29ee95171dc93aa524d" diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go index f4f37ca6d..194b1d93b 100644 --- a/sys/linux/gen/ppc64le.go +++ b/sys/linux/gen/ppc64le.go @@ -38,6 +38,7 @@ var resources_ppc64le = []*ResourceDesc{ {Name: "fd_binder", Kind: []string{"fd", "fd_binder"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block", Kind: []string{"fd", "fd_block_trace", "fd_block"}, Values: []uint64{18446744073709551615}}, {Name: "fd_block_trace", Kind: []string{"fd", "fd_block_trace"}, Values: []uint64{18446744073709551615}}, + {Name: "fd_bpf_link", Kind: []string{"fd", "fd_bpf_link"}, Values: []uint64{18446744073709551615}}, {Name: "fd_bpf_map", Kind: []string{"fd", "fd_bpf_map"}, Values: []uint64{18446744073709551615, 1}}, {Name: "fd_bpf_prog", Kind: []string{"fd", "fd_bpf_prog"}, Values: []uint64{18446744073709551615}}, {Name: "fd_btf", Kind: []string{"fd", "fd_btf"}, Values: []uint64{18446744073709551615}}, @@ -1413,6 +1414,18 @@ var structDescs_ppc64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, + {StructKey{Name: "bpf_link_create_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_create_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_cgroup", FldName: "target_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_types_link_create", FldName: "attach_type", TypeSize: 4}}, Vals: []uint64{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "flags", TypeSize: 4}}}, + }}}, + {StructKey{Name: "bpf_link_update_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_link_update_arg", TypeSize: 16}, Fields: []Type{ + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "link_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "new_prog_fd", TypeSize: 4}}, + &FlagsType{IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_link_update_flags", FldName: "flags", TypeSize: 4}}, []uint64{4}, true}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "old_prog_fd", TypeSize: 4}}, + }}}, {StructKey{Name: "bpf_map_batch_arg"}, &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_batch_arg", TypeSize: 56}, Fields: []Type{ &PtrType{TypeCommon{TypeName: "ptr64", FldName: "in_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", IsVarlen: true}}}, &PtrType{TypeCommon{TypeName: "ptr64", FldName: "out_batch", TypeSize: 8}, &BufferType{TypeCommon: TypeCommon{TypeName: "array", ArgDir: 1, IsVarlen: true}}}, @@ -50497,6 +50510,16 @@ var syscalls_ppc64le = []*Syscall{ &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_get_prog_info_arg"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, }}, + {NR: 361, Name: "bpf$BPF_LINK_CREATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 28}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_link_create_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, + }, Ret: &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_link", FldName: "ret", TypeSize: 4, ArgDir: 1}}}, + {NR: 361, Name: "bpf$BPF_LINK_UPDATE", CallName: "bpf", Args: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 29}, + &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &StructType{Key: StructKey{Name: "bpf_link_update_arg"}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "size", TypeSize: 8}}, Path: []string{"arg"}}, + }}, {NR: 361, Name: "bpf$BPF_MAP_FREEZE", CallName: "bpf", Args: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "cmd", TypeSize: 8}}, Val: 22}, &PtrType{TypeCommon{TypeName: "ptr", FldName: "arg", TypeSize: 8}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", TypeSize: 4}}}, @@ -68413,6 +68436,8 @@ var consts_ppc64le = []ConstValue{ {Name: "BPF_LD"}, {"BPF_LDX", 1}, {"BPF_LINE_INFO_SIZE", 16}, + {"BPF_LINK_CREATE", 28}, + {"BPF_LINK_UPDATE", 29}, {"BPF_LIRC_MODE2", 16}, {"BPF_LSH0", 6}, {"BPF_LSM_MAC", 27}, @@ -77976,4 +78001,4 @@ var consts_ppc64le = []ConstValue{ {"ethtool_per_queue_op_size", 128}, } -const revision_ppc64le = "0e6484f46d3da8a3ed2658e4dbaa50339006a604" +const revision_ppc64le = "dcd7f7b591f6626f4824f73bc8c4cfb745c96616" |
