From cd3454ba97cb695ff923f4d7def0e25e85e5298c Mon Sep 17 00:00:00 2001 From: Dmitry Vyukov Date: Tue, 14 May 2019 15:08:05 +0200 Subject: sys/linux: improve btf descriptions Now that we have the len path expressions we can fix the TODO in btf descriptions to properly specify offsets of btf sections. Also add proper descriptions for btf type section and few other minor things around. --- sys/linux/gen/386.go | 208 +++++++++++++++++++++++++++++++++++++++++++---- sys/linux/gen/amd64.go | 208 +++++++++++++++++++++++++++++++++++++++++++---- sys/linux/gen/arm.go | 208 +++++++++++++++++++++++++++++++++++++++++++---- sys/linux/gen/arm64.go | 208 +++++++++++++++++++++++++++++++++++++++++++---- sys/linux/gen/ppc64le.go | 208 +++++++++++++++++++++++++++++++++++++++++++---- 5 files changed, 955 insertions(+), 85 deletions(-) (limited to 'sys/linux/gen') diff --git a/sys/linux/gen/386.go b/sys/linux/gen/386.go index c95b62add..0786e62be 100644 --- a/sys/linux/gen/386.go +++ b/sys/linux/gen/386.go @@ -1033,12 +1033,9 @@ var structDescs_386 = []*KeyedStruct{ }}}, {Key: StructKey{Name: "bpf_btf_strings"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z0", TypeSize: 1}}}, - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings_elem", TypeSize: 1}}, Vals: []uint64{97, 48, 95, 46, 0}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z1", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "bpf_btf_types"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_types", IsVarlen: true}, Fields: []Type{ - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, - }, AlignAttr: 4}}, {Key: StructKey{Name: "bpf_detach_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_detach_arg", TypeSize: 20}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "target", TypeSize: 4}}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog", TypeSize: 4}}, @@ -1052,8 +1049,8 @@ var structDescs_386 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"}, }}}, {Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}}, @@ -1153,8 +1150,8 @@ var structDescs_386 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"}, }}}, {Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, @@ -1168,9 +1165,9 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}}, @@ -1241,7 +1238,7 @@ var structDescs_386 = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_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}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Path: []string{"func_info"}}, @@ -1271,7 +1268,7 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_btf_id", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}}, @@ -1405,6 +1402,15 @@ var structDescs_386 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "lev", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "keysize", TypeSize: 1, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "btf_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_array", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "index_type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nelems", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_enum", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}}, + }}}, {Key: StructKey{Name: "btf_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_header", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 2}}, Val: 60319}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}, Val: 1}, @@ -1412,9 +1418,159 @@ var structDescs_386 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "hdr_len", TypeSize: 4}}, Val: 24}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type_off", TypeSize: 4}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "type_len", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"parent"}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "str_len", TypeSize: 4}}}, - &StructType{Key: StructKey{Name: "bpf_btf_types"}, FldName: "types"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_len", TypeSize: 4}}, BitSize: 8, Path: []string{"bpf_btf_program", "strings"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "types", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "btf_type"}}}, + }, AlignAttr: 4}}, + {Key: StructKey{Name: "btf_member"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_member", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_param"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_param", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "btf_type_int"}, FldName: "int"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, FldName: "ptr"}, + &StructType{Key: StructKey{Name: "btf_type_array"}, FldName: "array"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, FldName: "struct"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, FldName: "union"}, + &StructType{Key: StructKey{Name: "btf_type_enum"}, FldName: "enum"}, + &StructType{Key: StructKey{Name: "btf_type_fwd"}, FldName: "fwd"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, FldName: "typedef"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, FldName: "volatile"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, FldName: "const"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, FldName: "restrict"}, + &StructType{Key: StructKey{Name: "btf_type_func"}, FldName: "func"}, + &StructType{Key: StructKey{Name: "btf_type_func_proto"}, FldName: "func_proto"}, + &StructType{Key: StructKey{Name: "btf_type_var"}, FldName: "var"}, + &StructType{Key: StructKey{Name: "btf_type_datasec"}, FldName: "datasec"}, + }}}, + {Key: StructKey{Name: "btf_type_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_array", TypeSize: 24}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &StructType{Key: StructKey{Name: "btf_array"}, FldName: "data"}, + }}}, + {Key: StructKey{Name: "btf_type_datasec"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_datasec", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"secinfo"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 15}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "secinfo", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_var_secinfo"}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Kind: 1, RangeBegin: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "btf_type_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_enum", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"values"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 6}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}, Val: 4}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "values", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_enum"}}}, + }}}, + {Key: StructKey{Name: "btf_type_func"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 12}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_func_proto"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func_proto", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"params"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 13}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "params", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_param"}}}, + }}}, + {Key: StructKey{Name: "btf_type_fwd"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_fwd", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 7}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_type_int"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_int", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bits", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "pad", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "offset", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "btf_type_int_encoding", FldName: "encoding", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 4}, BitMask: true}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_CONST]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_PTR]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_RESTRICT]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 11}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_TYPEDEF]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_VOLATILE]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_STRUCT]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_UNION]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_var"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_var", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 14}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "linkage", TypeSize: 4}}, Kind: 2, RangeEnd: 1}, + }}}, + {Key: StructKey{Name: "btf_var_secinfo"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_var_secinfo", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, }}}, {Key: StructKey{Name: "btrfs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btrfs_options", IsVarlen: true}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "degraded", TypeSize: 8}, Kind: 2, Values: []string{"degraded"}, NoZ: true}, @@ -43586,6 +43742,24 @@ var consts_386 = []ConstValue{ {Name: "BRCTL_DEL_BRIDGE", Value: 3}, {Name: "BRCTL_GET_BRIDGES", Value: 1}, {Name: "BRCTL_GET_VERSION"}, + {Name: "BTF_INT_BOOL", Value: 4}, + {Name: "BTF_INT_CHAR", Value: 2}, + {Name: "BTF_INT_SIGNED", Value: 1}, + {Name: "BTF_KIND_ARRAY", Value: 3}, + {Name: "BTF_KIND_CONST", Value: 10}, + {Name: "BTF_KIND_DATASEC", Value: 15}, + {Name: "BTF_KIND_ENUM", Value: 6}, + {Name: "BTF_KIND_FUNC", Value: 12}, + {Name: "BTF_KIND_FUNC_PROTO", Value: 13}, + {Name: "BTF_KIND_FWD", Value: 7}, + {Name: "BTF_KIND_INT", Value: 1}, + {Name: "BTF_KIND_PTR", Value: 2}, + {Name: "BTF_KIND_RESTRICT", Value: 11}, + {Name: "BTF_KIND_STRUCT", Value: 4}, + {Name: "BTF_KIND_TYPEDEF", Value: 8}, + {Name: "BTF_KIND_UNION", Value: 5}, + {Name: "BTF_KIND_VAR", Value: 14}, + {Name: "BTF_KIND_VOLATILE", Value: 9}, {Name: "BTF_MAGIC", Value: 60319}, {Name: "BTF_VERSION", Value: 1}, {Name: "BTPROTO_BNEP", Value: 4}, @@ -50841,4 +51015,4 @@ var consts_386 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_386 = "46f014ac33b4c7213591c942d3a9f5eb00cb485d" +const revision_386 = "ecea12af453eaa74530a427a5c7e22647d969dc5" diff --git a/sys/linux/gen/amd64.go b/sys/linux/gen/amd64.go index 7f42a5b7d..ffb5794eb 100644 --- a/sys/linux/gen/amd64.go +++ b/sys/linux/gen/amd64.go @@ -1036,12 +1036,9 @@ var structDescs_amd64 = []*KeyedStruct{ }}}, {Key: StructKey{Name: "bpf_btf_strings"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z0", TypeSize: 1}}}, - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings_elem", TypeSize: 1}}, Vals: []uint64{97, 48, 95, 46, 0}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z1", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "bpf_btf_types"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_types", IsVarlen: true}, Fields: []Type{ - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, - }, AlignAttr: 4}}, {Key: StructKey{Name: "bpf_detach_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_detach_arg", TypeSize: 20}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "target", TypeSize: 4}}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog", TypeSize: 4}}, @@ -1055,8 +1052,8 @@ var structDescs_amd64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"}, }}}, {Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}}, @@ -1156,8 +1153,8 @@ var structDescs_amd64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"}, }}}, {Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, @@ -1171,9 +1168,9 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}}, @@ -1244,7 +1241,7 @@ var structDescs_amd64 = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_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}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Path: []string{"func_info"}}, @@ -1274,7 +1271,7 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_btf_id", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}}, @@ -1406,6 +1403,15 @@ var structDescs_amd64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "lev", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "keysize", TypeSize: 1, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "btf_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_array", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "index_type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nelems", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_enum", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}}, + }}}, {Key: StructKey{Name: "btf_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_header", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 2}}, Val: 60319}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}, Val: 1}, @@ -1413,9 +1419,159 @@ var structDescs_amd64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "hdr_len", TypeSize: 4}}, Val: 24}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type_off", TypeSize: 4}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "type_len", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"parent"}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "str_len", TypeSize: 4}}}, - &StructType{Key: StructKey{Name: "bpf_btf_types"}, FldName: "types"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_len", TypeSize: 4}}, BitSize: 8, Path: []string{"bpf_btf_program", "strings"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "types", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "btf_type"}}}, + }, AlignAttr: 4}}, + {Key: StructKey{Name: "btf_member"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_member", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_param"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_param", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "btf_type_int"}, FldName: "int"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, FldName: "ptr"}, + &StructType{Key: StructKey{Name: "btf_type_array"}, FldName: "array"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, FldName: "struct"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, FldName: "union"}, + &StructType{Key: StructKey{Name: "btf_type_enum"}, FldName: "enum"}, + &StructType{Key: StructKey{Name: "btf_type_fwd"}, FldName: "fwd"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, FldName: "typedef"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, FldName: "volatile"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, FldName: "const"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, FldName: "restrict"}, + &StructType{Key: StructKey{Name: "btf_type_func"}, FldName: "func"}, + &StructType{Key: StructKey{Name: "btf_type_func_proto"}, FldName: "func_proto"}, + &StructType{Key: StructKey{Name: "btf_type_var"}, FldName: "var"}, + &StructType{Key: StructKey{Name: "btf_type_datasec"}, FldName: "datasec"}, + }}}, + {Key: StructKey{Name: "btf_type_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_array", TypeSize: 24}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &StructType{Key: StructKey{Name: "btf_array"}, FldName: "data"}, + }}}, + {Key: StructKey{Name: "btf_type_datasec"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_datasec", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"secinfo"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 15}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "secinfo", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_var_secinfo"}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Kind: 1, RangeBegin: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "btf_type_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_enum", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"values"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 6}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}, Val: 4}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "values", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_enum"}}}, + }}}, + {Key: StructKey{Name: "btf_type_func"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 12}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_func_proto"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func_proto", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"params"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 13}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "params", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_param"}}}, + }}}, + {Key: StructKey{Name: "btf_type_fwd"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_fwd", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 7}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_type_int"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_int", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bits", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "pad", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "offset", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "btf_type_int_encoding", FldName: "encoding", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 4}, BitMask: true}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_CONST]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_PTR]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_RESTRICT]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 11}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_TYPEDEF]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_VOLATILE]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_STRUCT]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_UNION]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_var"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_var", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 14}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "linkage", TypeSize: 4}}, Kind: 2, RangeEnd: 1}, + }}}, + {Key: StructKey{Name: "btf_var_secinfo"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_var_secinfo", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, }}}, {Key: StructKey{Name: "btrfs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btrfs_options", IsVarlen: true}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "degraded", TypeSize: 8}, Kind: 2, Values: []string{"degraded"}, NoZ: true}, @@ -44093,6 +44249,24 @@ var consts_amd64 = []ConstValue{ {Name: "BRCTL_DEL_BRIDGE", Value: 3}, {Name: "BRCTL_GET_BRIDGES", Value: 1}, {Name: "BRCTL_GET_VERSION"}, + {Name: "BTF_INT_BOOL", Value: 4}, + {Name: "BTF_INT_CHAR", Value: 2}, + {Name: "BTF_INT_SIGNED", Value: 1}, + {Name: "BTF_KIND_ARRAY", Value: 3}, + {Name: "BTF_KIND_CONST", Value: 10}, + {Name: "BTF_KIND_DATASEC", Value: 15}, + {Name: "BTF_KIND_ENUM", Value: 6}, + {Name: "BTF_KIND_FUNC", Value: 12}, + {Name: "BTF_KIND_FUNC_PROTO", Value: 13}, + {Name: "BTF_KIND_FWD", Value: 7}, + {Name: "BTF_KIND_INT", Value: 1}, + {Name: "BTF_KIND_PTR", Value: 2}, + {Name: "BTF_KIND_RESTRICT", Value: 11}, + {Name: "BTF_KIND_STRUCT", Value: 4}, + {Name: "BTF_KIND_TYPEDEF", Value: 8}, + {Name: "BTF_KIND_UNION", Value: 5}, + {Name: "BTF_KIND_VAR", Value: 14}, + {Name: "BTF_KIND_VOLATILE", Value: 9}, {Name: "BTF_MAGIC", Value: 60319}, {Name: "BTF_VERSION", Value: 1}, {Name: "BTPROTO_BNEP", Value: 4}, @@ -51363,4 +51537,4 @@ var consts_amd64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_amd64 = "9f88ec122b4d3a49e80077f630b302be70535e88" +const revision_amd64 = "3e61d6a5b5a63b1b857675fe0cfb8091c3913ef3" diff --git a/sys/linux/gen/arm.go b/sys/linux/gen/arm.go index 69c80295a..f86e524c1 100644 --- a/sys/linux/gen/arm.go +++ b/sys/linux/gen/arm.go @@ -1031,12 +1031,9 @@ var structDescs_arm = []*KeyedStruct{ }}}, {Key: StructKey{Name: "bpf_btf_strings"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z0", TypeSize: 1}}}, - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings_elem", TypeSize: 1}}, Vals: []uint64{97, 48, 95, 46, 0}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z1", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "bpf_btf_types"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_types", IsVarlen: true}, Fields: []Type{ - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, - }, AlignAttr: 4}}, {Key: StructKey{Name: "bpf_detach_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_detach_arg", TypeSize: 20}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "target", TypeSize: 4}}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog", TypeSize: 4}}, @@ -1050,8 +1047,8 @@ var structDescs_arm = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"}, }}}, {Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}}, @@ -1151,8 +1148,8 @@ var structDescs_arm = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"}, }}}, {Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, @@ -1166,9 +1163,9 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}}, @@ -1239,7 +1236,7 @@ var structDescs_arm = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_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}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Path: []string{"func_info"}}, @@ -1269,7 +1266,7 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_btf_id", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}}, @@ -1403,6 +1400,15 @@ var structDescs_arm = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "lev", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "keysize", TypeSize: 1, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "btf_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_array", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "index_type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nelems", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_enum", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}}, + }}}, {Key: StructKey{Name: "btf_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_header", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 2}}, Val: 60319}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}, Val: 1}, @@ -1410,9 +1416,159 @@ var structDescs_arm = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "hdr_len", TypeSize: 4}}, Val: 24}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type_off", TypeSize: 4}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "type_len", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"parent"}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "str_len", TypeSize: 4}}}, - &StructType{Key: StructKey{Name: "bpf_btf_types"}, FldName: "types"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_len", TypeSize: 4}}, BitSize: 8, Path: []string{"bpf_btf_program", "strings"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "types", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "btf_type"}}}, + }, AlignAttr: 4}}, + {Key: StructKey{Name: "btf_member"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_member", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_param"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_param", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "btf_type_int"}, FldName: "int"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, FldName: "ptr"}, + &StructType{Key: StructKey{Name: "btf_type_array"}, FldName: "array"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, FldName: "struct"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, FldName: "union"}, + &StructType{Key: StructKey{Name: "btf_type_enum"}, FldName: "enum"}, + &StructType{Key: StructKey{Name: "btf_type_fwd"}, FldName: "fwd"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, FldName: "typedef"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, FldName: "volatile"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, FldName: "const"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, FldName: "restrict"}, + &StructType{Key: StructKey{Name: "btf_type_func"}, FldName: "func"}, + &StructType{Key: StructKey{Name: "btf_type_func_proto"}, FldName: "func_proto"}, + &StructType{Key: StructKey{Name: "btf_type_var"}, FldName: "var"}, + &StructType{Key: StructKey{Name: "btf_type_datasec"}, FldName: "datasec"}, + }}}, + {Key: StructKey{Name: "btf_type_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_array", TypeSize: 24}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &StructType{Key: StructKey{Name: "btf_array"}, FldName: "data"}, + }}}, + {Key: StructKey{Name: "btf_type_datasec"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_datasec", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"secinfo"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 15}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "secinfo", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_var_secinfo"}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Kind: 1, RangeBegin: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "btf_type_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_enum", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"values"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 6}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}, Val: 4}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "values", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_enum"}}}, + }}}, + {Key: StructKey{Name: "btf_type_func"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 12}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_func_proto"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func_proto", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"params"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 13}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "params", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_param"}}}, + }}}, + {Key: StructKey{Name: "btf_type_fwd"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_fwd", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 7}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_type_int"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_int", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bits", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "pad", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "offset", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "btf_type_int_encoding", FldName: "encoding", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 4}, BitMask: true}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_CONST]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_PTR]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_RESTRICT]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 11}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_TYPEDEF]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_VOLATILE]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_STRUCT]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_UNION]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_var"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_var", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 14}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "linkage", TypeSize: 4}}, Kind: 2, RangeEnd: 1}, + }}}, + {Key: StructKey{Name: "btf_var_secinfo"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_var_secinfo", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, }}}, {Key: StructKey{Name: "btrfs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btrfs_options", IsVarlen: true}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "degraded", TypeSize: 8}, Kind: 2, Values: []string{"degraded"}, NoZ: true}, @@ -43142,6 +43298,24 @@ var consts_arm = []ConstValue{ {Name: "BRCTL_DEL_BRIDGE", Value: 3}, {Name: "BRCTL_GET_BRIDGES", Value: 1}, {Name: "BRCTL_GET_VERSION"}, + {Name: "BTF_INT_BOOL", Value: 4}, + {Name: "BTF_INT_CHAR", Value: 2}, + {Name: "BTF_INT_SIGNED", Value: 1}, + {Name: "BTF_KIND_ARRAY", Value: 3}, + {Name: "BTF_KIND_CONST", Value: 10}, + {Name: "BTF_KIND_DATASEC", Value: 15}, + {Name: "BTF_KIND_ENUM", Value: 6}, + {Name: "BTF_KIND_FUNC", Value: 12}, + {Name: "BTF_KIND_FUNC_PROTO", Value: 13}, + {Name: "BTF_KIND_FWD", Value: 7}, + {Name: "BTF_KIND_INT", Value: 1}, + {Name: "BTF_KIND_PTR", Value: 2}, + {Name: "BTF_KIND_RESTRICT", Value: 11}, + {Name: "BTF_KIND_STRUCT", Value: 4}, + {Name: "BTF_KIND_TYPEDEF", Value: 8}, + {Name: "BTF_KIND_UNION", Value: 5}, + {Name: "BTF_KIND_VAR", Value: 14}, + {Name: "BTF_KIND_VOLATILE", Value: 9}, {Name: "BTF_MAGIC", Value: 60319}, {Name: "BTF_VERSION", Value: 1}, {Name: "BTPROTO_BNEP", Value: 4}, @@ -50328,4 +50502,4 @@ var consts_arm = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm = "edb7d2959b84eacc3f017dc75a82d274acd38b3c" +const revision_arm = "4da417a494a2d6f76ffabd2976b7e71d3102709a" diff --git a/sys/linux/gen/arm64.go b/sys/linux/gen/arm64.go index 8e1c66adc..260ce0536 100644 --- a/sys/linux/gen/arm64.go +++ b/sys/linux/gen/arm64.go @@ -1034,12 +1034,9 @@ var structDescs_arm64 = []*KeyedStruct{ }}}, {Key: StructKey{Name: "bpf_btf_strings"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z0", TypeSize: 1}}}, - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings_elem", TypeSize: 1}}, Vals: []uint64{97, 48, 95, 46, 0}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z1", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "bpf_btf_types"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_types", IsVarlen: true}, Fields: []Type{ - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, - }, AlignAttr: 4}}, {Key: StructKey{Name: "bpf_detach_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_detach_arg", TypeSize: 20}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "target", TypeSize: 4}}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog", TypeSize: 4}}, @@ -1053,8 +1050,8 @@ var structDescs_arm64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"}, }}}, {Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}}, @@ -1154,8 +1151,8 @@ var structDescs_arm64 = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"}, }}}, {Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, @@ -1169,9 +1166,9 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}}, @@ -1242,7 +1239,7 @@ var structDescs_arm64 = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_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}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Path: []string{"func_info"}}, @@ -1272,7 +1269,7 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_btf_id", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}}, @@ -1404,6 +1401,15 @@ var structDescs_arm64 = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "lev", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "keysize", TypeSize: 1, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "btf_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_array", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "index_type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nelems", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_enum", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}}, + }}}, {Key: StructKey{Name: "btf_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_header", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 2}}, Val: 60319}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}, Val: 1}, @@ -1411,9 +1417,159 @@ var structDescs_arm64 = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "hdr_len", TypeSize: 4}}, Val: 24}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type_off", TypeSize: 4}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "type_len", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"parent"}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "str_len", TypeSize: 4}}}, - &StructType{Key: StructKey{Name: "bpf_btf_types"}, FldName: "types"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_len", TypeSize: 4}}, BitSize: 8, Path: []string{"bpf_btf_program", "strings"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "types", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "btf_type"}}}, + }, AlignAttr: 4}}, + {Key: StructKey{Name: "btf_member"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_member", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_param"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_param", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "btf_type_int"}, FldName: "int"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, FldName: "ptr"}, + &StructType{Key: StructKey{Name: "btf_type_array"}, FldName: "array"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, FldName: "struct"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, FldName: "union"}, + &StructType{Key: StructKey{Name: "btf_type_enum"}, FldName: "enum"}, + &StructType{Key: StructKey{Name: "btf_type_fwd"}, FldName: "fwd"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, FldName: "typedef"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, FldName: "volatile"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, FldName: "const"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, FldName: "restrict"}, + &StructType{Key: StructKey{Name: "btf_type_func"}, FldName: "func"}, + &StructType{Key: StructKey{Name: "btf_type_func_proto"}, FldName: "func_proto"}, + &StructType{Key: StructKey{Name: "btf_type_var"}, FldName: "var"}, + &StructType{Key: StructKey{Name: "btf_type_datasec"}, FldName: "datasec"}, + }}}, + {Key: StructKey{Name: "btf_type_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_array", TypeSize: 24}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &StructType{Key: StructKey{Name: "btf_array"}, FldName: "data"}, + }}}, + {Key: StructKey{Name: "btf_type_datasec"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_datasec", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"secinfo"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 15}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "secinfo", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_var_secinfo"}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Kind: 1, RangeBegin: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "btf_type_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_enum", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"values"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 6}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}, Val: 4}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "values", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_enum"}}}, + }}}, + {Key: StructKey{Name: "btf_type_func"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 12}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_func_proto"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func_proto", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"params"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 13}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "params", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_param"}}}, + }}}, + {Key: StructKey{Name: "btf_type_fwd"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_fwd", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 7}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_type_int"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_int", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bits", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "pad", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "offset", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "btf_type_int_encoding", FldName: "encoding", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 4}, BitMask: true}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_CONST]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_PTR]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_RESTRICT]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 11}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_TYPEDEF]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_VOLATILE]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_STRUCT]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_UNION]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_var"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_var", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 14}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "linkage", TypeSize: 4}}, Kind: 2, RangeEnd: 1}, + }}}, + {Key: StructKey{Name: "btf_var_secinfo"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_var_secinfo", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, }}}, {Key: StructKey{Name: "btrfs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btrfs_options", IsVarlen: true}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "degraded", TypeSize: 8}, Kind: 2, Values: []string{"degraded"}, NoZ: true}, @@ -43455,6 +43611,24 @@ var consts_arm64 = []ConstValue{ {Name: "BRCTL_DEL_BRIDGE", Value: 3}, {Name: "BRCTL_GET_BRIDGES", Value: 1}, {Name: "BRCTL_GET_VERSION"}, + {Name: "BTF_INT_BOOL", Value: 4}, + {Name: "BTF_INT_CHAR", Value: 2}, + {Name: "BTF_INT_SIGNED", Value: 1}, + {Name: "BTF_KIND_ARRAY", Value: 3}, + {Name: "BTF_KIND_CONST", Value: 10}, + {Name: "BTF_KIND_DATASEC", Value: 15}, + {Name: "BTF_KIND_ENUM", Value: 6}, + {Name: "BTF_KIND_FUNC", Value: 12}, + {Name: "BTF_KIND_FUNC_PROTO", Value: 13}, + {Name: "BTF_KIND_FWD", Value: 7}, + {Name: "BTF_KIND_INT", Value: 1}, + {Name: "BTF_KIND_PTR", Value: 2}, + {Name: "BTF_KIND_RESTRICT", Value: 11}, + {Name: "BTF_KIND_STRUCT", Value: 4}, + {Name: "BTF_KIND_TYPEDEF", Value: 8}, + {Name: "BTF_KIND_UNION", Value: 5}, + {Name: "BTF_KIND_VAR", Value: 14}, + {Name: "BTF_KIND_VOLATILE", Value: 9}, {Name: "BTF_MAGIC", Value: 60319}, {Name: "BTF_VERSION", Value: 1}, {Name: "BTPROTO_BNEP", Value: 4}, @@ -50623,4 +50797,4 @@ var consts_arm64 = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_arm64 = "c54099c49c42b8cbf95feac45d7cdbe48a1359d4" +const revision_arm64 = "49a6ef6e9fa8059bfa600ccf85d424cf9253c4c7" diff --git a/sys/linux/gen/ppc64le.go b/sys/linux/gen/ppc64le.go index 6ced1431c..ae818c147 100644 --- a/sys/linux/gen/ppc64le.go +++ b/sys/linux/gen/ppc64le.go @@ -1033,12 +1033,9 @@ var structDescs_ppc64le = []*KeyedStruct{ }}}, {Key: StructKey{Name: "bpf_btf_strings"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z0", TypeSize: 1}}}, - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Type: &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_btf_strings_elem", TypeSize: 1}}, Vals: []uint64{97, 48, 95, 46, 0}}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "z1", TypeSize: 1}}}, }}}, - {Key: StructKey{Name: "bpf_btf_types"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_btf_types", IsVarlen: true}, Fields: []Type{ - &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}}, - }, AlignAttr: 4}}, {Key: StructKey{Name: "bpf_detach_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_detach_arg", TypeSize: 20}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "target", TypeSize: 4}}}, &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_prog", FldName: "prog", TypeSize: 4}}, @@ -1052,8 +1049,8 @@ var structDescs_ppc64le = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_insn_exit"}, FldName: "exit"}, }}}, {Key: StructKey{Name: "bpf_func_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_func_info", TypeSize: 8}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type_id", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_get_btf_info_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_get_btf_info_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf", TypeSize: 4}}, @@ -1153,8 +1150,8 @@ var structDescs_ppc64le = []*KeyedStruct{ &StructType{Key: StructKey{Name: "bpf_framed_program"}, FldName: "framed"}, }}}, {Key: StructKey{Name: "bpf_line_info"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_line_info", TypeSize: 16}, Fields: []Type{ - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "insn_off", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "file_name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_off", TypeSize: 4}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "line_col", TypeSize: 4}}}, }}}, @@ -1168,9 +1165,9 @@ var structDescs_ppc64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "node", TypeSize: 4}}}, &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "map_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "map_ifindex", TypeSize: 4, IsOptional: true}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_key_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_value_type_id", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, }}}, {Key: StructKey{Name: "bpf_map_delete_arg"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "bpf_map_delete_arg", TypeSize: 16}, Fields: []Type{ &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_bpf_map", FldName: "map", TypeSize: 4}}, @@ -1241,7 +1238,7 @@ var structDescs_ppc64le = []*KeyedStruct{ &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "prog_name", TypeSize: 16}, Type: &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", TypeSize: 1}}}, Kind: 1, RangeBegin: 16, RangeEnd: 16}, &ResourceType{TypeCommon: TypeCommon{TypeName: "ifindex", FldName: "prog_ifindex", TypeSize: 4, IsOptional: true}}, &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bpf_attach_type", FldName: "expected_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}}, - &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "fd_btf", FldName: "btf_fd", TypeSize: 4, IsOptional: true}}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "func_info_rec_size", TypeSize: 4}}, Val: 8}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "func_info_cnt", TypeSize: 4}}, Path: []string{"func_info"}}, @@ -1271,7 +1268,7 @@ var structDescs_ppc64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_jited_func_lens", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "jited_ksyms", TypeSize: 8}, Type: &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", TypeSize: 8}}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int64", FldName: "jited_func_lens", TypeSize: 8, ArgDir: 1}}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}}, + &ResourceType{TypeCommon: TypeCommon{TypeName: "bpf_btf_id", FldName: "btf_id", TypeSize: 4, ArgDir: 1}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "func_info_rec_size", TypeSize: 4, ArgDir: 1}}}, &PtrType{TypeCommon: TypeCommon{TypeName: "ptr64", FldName: "func_info", TypeSize: 8}, Type: &StructType{Key: StructKey{Name: "bpf_func_info"}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nr_func_info", TypeSize: 4, ArgDir: 1}}}, @@ -1403,6 +1400,15 @@ var structDescs_ppc64le = []*KeyedStruct{ &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "lev", TypeSize: 1, ArgDir: 1}}}, &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "keysize", TypeSize: 1, ArgDir: 1}}}, }}}, + {Key: StructKey{Name: "btf_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_array", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "index_type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "nelems", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_enum", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "val", TypeSize: 4}}}, + }}}, {Key: StructKey{Name: "btf_header"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_header", IsVarlen: true}, Fields: []Type{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "magic", TypeSize: 2}}, Val: 60319}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "version", TypeSize: 1}}, Val: 1}, @@ -1410,9 +1416,159 @@ var structDescs_ppc64le = []*KeyedStruct{ &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "hdr_len", TypeSize: 4}}, Val: 24}, &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "type_off", TypeSize: 4}}}, &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "type_len", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, - &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"parent"}}, - &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "str_len", TypeSize: 4}}}, - &StructType{Key: StructKey{Name: "bpf_btf_types"}, FldName: "types"}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_off", TypeSize: 4}}, BitSize: 8, Path: []string{"types"}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "str_len", TypeSize: 4}}, BitSize: 8, Path: []string{"bpf_btf_program", "strings"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "types", IsVarlen: true}, Type: &UnionType{Key: StructKey{Name: "btf_type"}}}, + }, AlignAttr: 4}}, + {Key: StructKey{Name: "btf_member"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_member", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_param"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_param", TypeSize: 8}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type", IsVarlen: true}, Fields: []Type{ + &StructType{Key: StructKey{Name: "btf_type_int"}, FldName: "int"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, FldName: "ptr"}, + &StructType{Key: StructKey{Name: "btf_type_array"}, FldName: "array"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, FldName: "struct"}, + &StructType{Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, FldName: "union"}, + &StructType{Key: StructKey{Name: "btf_type_enum"}, FldName: "enum"}, + &StructType{Key: StructKey{Name: "btf_type_fwd"}, FldName: "fwd"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, FldName: "typedef"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, FldName: "volatile"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, FldName: "const"}, + &StructType{Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, FldName: "restrict"}, + &StructType{Key: StructKey{Name: "btf_type_func"}, FldName: "func"}, + &StructType{Key: StructKey{Name: "btf_type_func_proto"}, FldName: "func_proto"}, + &StructType{Key: StructKey{Name: "btf_type_var"}, FldName: "var"}, + &StructType{Key: StructKey{Name: "btf_type_datasec"}, FldName: "datasec"}, + }}}, + {Key: StructKey{Name: "btf_type_array"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_array", TypeSize: 24}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 3}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &StructType{Key: StructKey{Name: "btf_array"}, FldName: "data"}, + }}}, + {Key: StructKey{Name: "btf_type_datasec"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_datasec", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"secinfo"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 15}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "bytesize", FldName: "size", TypeSize: 4}}, BitSize: 8, Path: []string{"data"}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "secinfo", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_var_secinfo"}}}, + &BufferType{TypeCommon: TypeCommon{TypeName: "array", FldName: "data", IsVarlen: true}, Kind: 1, RangeBegin: 1, RangeEnd: 3}, + }}}, + {Key: StructKey{Name: "btf_type_enum"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_enum", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"values"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 6}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}, Val: 4}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "values", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_enum"}}}, + }}}, + {Key: StructKey{Name: "btf_type_func"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 12}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_func_proto"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_func_proto", IsVarlen: true}, Fields: []Type{ + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "name_off", TypeSize: 4}}}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"params"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 13}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "params", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_param"}}}, + }}}, + {Key: StructKey{Name: "btf_type_fwd"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_fwd", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 7}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + }}}, + {Key: StructKey{Name: "btf_type_int"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_int", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 1}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "size", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "bits", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "pad", TypeSize: 1}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "offset", TypeSize: 1}}, Kind: 2, RangeEnd: 128}, + &FlagsType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "btf_type_int_encoding", FldName: "encoding", TypeSize: 1}}, Vals: []uint64{0, 1, 2, 4}, BitMask: true}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_CONST]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_CONST]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 10}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_PTR]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_PTR]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 2}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_RESTRICT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_RESTRICT]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 11}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_TYPEDEF]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_TYPEDEF]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 8}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_ref_t[BTF_KIND_VOLATILE]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_ref_t[BTF_KIND_VOLATILE]", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 9}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeEnd: 5}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_STRUCT]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_STRUCT]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 4}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_struct_t[BTF_KIND_UNION]"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_struct_t[BTF_KIND_UNION]", IsVarlen: true}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeEnd: 16}, + &LenType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "len", FldName: "info_vlen", TypeSize: 2}}, Path: []string{"fields"}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}, BitfieldLen: 7, BitfieldMdl: true}, Val: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int8", FldName: "info_kflag", TypeSize: 1}, BitfieldOff: 7, BitfieldLen: 1}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, + &ArrayType{TypeCommon: TypeCommon{TypeName: "array", FldName: "fields", IsVarlen: true}, Type: &StructType{Key: StructKey{Name: "btf_member"}}}, + }}}, + {Key: StructKey{Name: "btf_type_var"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_type_var", TypeSize: 16}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "name_off", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 16}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_vlen", TypeSize: 2}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_pad", TypeSize: 1}}}, + &ConstType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "const", FldName: "info_typ", TypeSize: 1}}, Val: 14}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "linkage", TypeSize: 4}}, Kind: 2, RangeEnd: 1}, + }}}, + {Key: StructKey{Name: "btf_var_secinfo"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btf_var_secinfo", TypeSize: 12}, Fields: []Type{ + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "type", TypeSize: 4}}, Kind: 2, RangeBegin: 1, RangeEnd: 5}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "offset", TypeSize: 4}}}, + &IntType{IntTypeCommon: IntTypeCommon{TypeCommon: TypeCommon{TypeName: "int32", FldName: "size", TypeSize: 4}}}, }}}, {Key: StructKey{Name: "btrfs_options"}, Desc: &StructDesc{TypeCommon: TypeCommon{TypeName: "btrfs_options", IsVarlen: true}, Fields: []Type{ &BufferType{TypeCommon: TypeCommon{TypeName: "stringnoz", FldName: "degraded", TypeSize: 8}, Kind: 2, Values: []string{"degraded"}, NoZ: true}, @@ -43449,6 +43605,24 @@ var consts_ppc64le = []ConstValue{ {Name: "BRCTL_DEL_BRIDGE", Value: 3}, {Name: "BRCTL_GET_BRIDGES", Value: 1}, {Name: "BRCTL_GET_VERSION"}, + {Name: "BTF_INT_BOOL", Value: 4}, + {Name: "BTF_INT_CHAR", Value: 2}, + {Name: "BTF_INT_SIGNED", Value: 1}, + {Name: "BTF_KIND_ARRAY", Value: 3}, + {Name: "BTF_KIND_CONST", Value: 10}, + {Name: "BTF_KIND_DATASEC", Value: 15}, + {Name: "BTF_KIND_ENUM", Value: 6}, + {Name: "BTF_KIND_FUNC", Value: 12}, + {Name: "BTF_KIND_FUNC_PROTO", Value: 13}, + {Name: "BTF_KIND_FWD", Value: 7}, + {Name: "BTF_KIND_INT", Value: 1}, + {Name: "BTF_KIND_PTR", Value: 2}, + {Name: "BTF_KIND_RESTRICT", Value: 11}, + {Name: "BTF_KIND_STRUCT", Value: 4}, + {Name: "BTF_KIND_TYPEDEF", Value: 8}, + {Name: "BTF_KIND_UNION", Value: 5}, + {Name: "BTF_KIND_VAR", Value: 14}, + {Name: "BTF_KIND_VOLATILE", Value: 9}, {Name: "BTF_MAGIC", Value: 60319}, {Name: "BTF_VERSION", Value: 1}, {Name: "BTPROTO_BNEP", Value: 4}, @@ -50590,4 +50764,4 @@ var consts_ppc64le = []ConstValue{ {Name: "bpf_insn_load_imm_dw", Value: 24}, } -const revision_ppc64le = "c9962d8789466ca93c6f6ea913e999255602e0cb" +const revision_ppc64le = "7634c0a83a0baec4a6418161fac443836686bb6d" -- cgit mrf-deployment