/linux/tools/lib/bpf/ |
H A D | relo_core.c | 73 const struct btf_array *arr) in is_flex_arr() 189 local_id = btf_array(local_type)->type; in __bpf_core_types_are_compat() 190 targ_id = btf_array(targ_type)->type; in __bpf_core_types_are_compat() 366 const struct btf_array *a = btf_array(t); in bpf_core_parse_spec() 457 local_id = btf_array(local_type)->type; in bpf_core_fields_are_compat() 458 targ_id = btf_array(targ_type)->type; in bpf_core_fields_are_compat() 642 const struct btf_array *a; in bpf_core_spec_match() 648 a = btf_array(targ_type); in bpf_core_spec_match() 1644 const struct btf_array *local_array = btf_array(local_t); in __bpf_core_types_match() 1645 const struct btf_array *targ_array = btf_array(targ_t); in __bpf_core_types_match()
|
H A D | btf_iter.c | 48 2, {sizeof(struct btf_type) + offsetof(struct btf_array, type), in btf_field_iter_init() 49 sizeof(struct btf_type) + offsetof(struct btf_array, index_type)} in btf_field_iter_init()
|
H A D | btf.c | 314 return base_size + sizeof(struct btf_array); in btf_type_size() 344 struct btf_array *a; in btf_bswap_type_rest() 378 a = btf_array(t); in btf_bswap_type_rest() 508 const struct btf_array *a = btf_array(t); in btf_validate_type() 768 const struct btf_array *array; in btf__resolve_size() 799 array = btf_array(t); in btf__resolve_size() 841 return btf__align_of(btf, btf_array(t)->type); in btf__align_of() 2144 struct btf_array *a; in btf__add_array() 2153 sz = sizeof(struct btf_type) + sizeof(struct btf_array); in btf__add_array() 2162 a = btf_array(t); in btf__add_array() [all …]
|
H A D | btf_dump.c | 342 const struct btf_array *a = btf_array(t); in btf_dump_mark_referenced() 513 return btf_dump_order_type(d, btf_array(t)->type, false); in btf_dump_order_type() 762 btf_dump_emit_type(d, btf_array(t)->type, cont_id); in btf_dump_emit_type() 1326 id = btf_array(t)->type; in btf_dump_emit_type_decl() 1499 const struct btf_array *a = btf_array(t); in btf_dump_emit_type_chain() 2032 const struct btf_array *array = btf_array(t); in btf_dump_array_data() 2352 const struct btf_array *array = btf_array(t); in btf_dump_type_data_check_zero()
|
H A D | btf.h | 515 static inline struct btf_array *btf_array(const struct btf_type *t) in btf_array() function 517 return (struct btf_array *)(t + 1); in btf_array()
|
H A D | btf_relocate.c | 160 struct btf_array *a = btf_array(t); in btf_mark_embedded_composite_type_ids()
|
H A D | linker.c | 1425 id1 = btf_array(t1)->type; in glob_sym_btf_matches() 1426 id2 = btf_array(t2)->type; in glob_sym_btf_matches()
|
H A D | libbpf.c | 2411 const struct btf_array *arr_info; in get_map_field_int() 2431 arr_info = btf_array(arr_t); in get_map_field_int() 2660 if (!btf_is_array(t) || btf_array(t)->nelems) { in parse_btf_map_def() 2665 t = skip_mods_and_typedefs(btf, btf_array(t)->type, NULL); in parse_btf_map_def() 4085 if (btf_array(t)->nelems == 0) in find_kcfg_type() 4087 if (find_kcfg_type(btf, btf_array(t)->type, NULL) != KCFG_CHAR) in find_kcfg_type() 10176 const struct btf_array *array; in map_btf_datasec_resize() 10212 array = btf_array(array_type); in map_btf_datasec_resize()
|
/linux/tools/bpf/bpftool/ |
H A D | btf_dumper.c | 211 static bool is_str_array(const struct btf *btf, const struct btf_array *arr, in is_str_array() 251 struct btf_array *arr = (struct btf_array *)(t + 1); in btf_dumper_array() 623 const struct btf_array *array; in __btf_dumper_type_only() 654 array = (struct btf_array *)(t + 1); in __btf_dumper_type_only()
|
H A D | btf.c | 159 const struct btf_array *arr = (const void *)(t + 1); in dump_btf_type() 539 return btf_type_rank(btf, btf_array(t)->type, has_name); in btf_type_rank() 573 return btf_type_sort_name(btf, btf_array(t)->type, true); in btf_type_sort_name() 642 struct btf_array *arr = btf_array(t); in btf_type_disambig_hash()
|
H A D | gen.c | 2036 struct btf_array *array; in btfgen_mark_type() 2072 array = btf_array(btf_type); in btfgen_mark_type() 2110 struct btf_array *array; in btfgen_record_field_relo() 2145 array = btf_array(btf_type); in btfgen_record_field_relo() 2217 struct btf_array *array; in btfgen_mark_type_match() 2219 array = btf_array(btf_type); in btfgen_mark_type_match()
|
/linux/tools/testing/selftests/bpf/ |
H A D | btf_helpers.c | 118 const struct btf_array *arr = btf_array(t); in fprintf_btf_type_raw()
|
/linux/include/uapi/linux/ |
H A D | btf.h | 111 struct btf_array { struct
|
/linux/tools/include/uapi/linux/ |
H A D | btf.h | 111 struct btf_array { struct
|
/linux/tools/testing/selftests/bpf/prog_tests/ |
H A D | btf_write.c | 92 ASSERT_EQ(btf_array(t)->index_type, 1, "array_index_type"); in gen_btf() 93 ASSERT_EQ(btf_array(t)->type, 2, "array_elem_type"); in gen_btf() 94 ASSERT_EQ(btf_array(t)->nelems, 10, "array_nelems"); in gen_btf()
|
H A D | core_reloc.c | 475 } else if (btf_is_array(t) && (t = btf__type_by_id(local_btf, btf_array(t)->type)) && in setup_type_id_case_local()
|
H A D | btf.c | 8036 return base_size + sizeof(struct btf_array); in btf_type_size()
|
/linux/include/linux/ |
H A D | btf.h | 463 static inline struct btf_array *btf_array(const struct btf_type *t) in btf_array() function 465 return (struct btf_array *)(t + 1); in btf_array()
|
/linux/Documentation/bpf/ |
H A D | btf.rst | 199 ``btf_type`` is followed by one ``struct btf_array``:: 201 struct btf_array { 207 The ``struct btf_array`` encoding: 217 The ``struct btf_array`` allows chaining through element type to represent 222 * [2]: array, ``btf_array.type = [1]``, ``btf_array.nelems = 6`` 223 * [3]: array, ``btf_array.type = [2]``, ``btf_array.nelems = 5`` 226 one-dimensional array, e.g., for ``a[5][6]``, the ``btf_array.nelems`` is
|
/linux/kernel/bpf/ |
H A D | btf.c | 729 static const struct btf_array *btf_type_array(const struct btf_type *t) in btf_type_array() 731 return (const struct btf_array *)(t + 1); in btf_type_array() 962 const struct btf_array *array; in btf_show_name() 1943 const struct btf_array *array = NULL; in __btf_resolve_size() 2903 const struct btf_array *array = btf_type_array(t); in btf_array_check_meta() 2955 const struct btf_array *array = btf_type_array(v->t); in btf_array_resolve() 3020 const struct btf_array *array = btf_type_array(t); in btf_array_log() 3030 const struct btf_array *array = btf_type_array(t); in __btf_array_show() 3617 const struct btf_array *array; in btf_find_field_one() 3624 array = btf_array(var_type); in btf_find_field_one() [all …]
|
H A D | verifier.c | 11180 const struct btf_array *array; in __btf_type_is_scalar_struct() 11193 array = btf_array(member_type); in __btf_type_is_scalar_struct()
|
/linux/kernel/trace/ |
H A D | trace_probe.c | 335 const struct btf_array *array; in btf_type_is_char_array() 342 array = (const struct btf_array *)(type + 1); in btf_type_is_char_array()
|