/kernel/linux/linux-6.6/tools/lib/bpf/ |
H A D | relo_core.c | 147 const struct btf *targ_btf, __u32 targ_id, int level) in __bpf_core_types_are_compat() 154 targ_type = btf_type_by_id(targ_btf, targ_id); in __bpf_core_types_are_compat() 164 targ_type = skip_mods_and_typedefs(targ_btf, targ_id, &targ_id); in __bpf_core_types_are_compat() 207 skip_mods_and_typedefs(targ_btf, targ_p->type, &targ_id); in __bpf_core_types_are_compat() 208 err = __bpf_core_types_are_compat(local_btf, local_id, targ_btf, targ_id, in __bpf_core_types_are_compat() 216 skip_mods_and_typedefs(targ_btf, targ_type->type, &targ_id); in __bpf_core_types_are_compat() 414 const struct btf *targ_btf, in bpf_core_fields_are_compat() 421 targ_type = skip_mods_and_typedefs(targ_btf, targ_id, &targ_id); in bpf_core_fields_are_compat() 442 targ_name = btf__name_by_offset(targ_btf, targ_type->name_off); in bpf_core_fields_are_compat() 483 const struct btf *targ_btf, in bpf_core_match_member() 146 __bpf_core_types_are_compat(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, __u32 targ_id, int level) __bpf_core_types_are_compat() argument 412 bpf_core_fields_are_compat(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, __u32 targ_id) bpf_core_fields_are_compat() argument 481 bpf_core_match_member(const struct btf *local_btf, const struct bpf_core_accessor *local_acc, const struct btf *targ_btf, __u32 targ_id, struct bpf_core_spec *spec, __u32 *next_targ_id) bpf_core_match_member() argument 557 bpf_core_spec_match(struct bpf_core_spec *local_spec, const struct btf *targ_btf, __u32 targ_id, struct bpf_core_spec *targ_spec) bpf_core_spec_match() argument 1422 bpf_core_names_match(const struct btf *local_btf, size_t local_name_off, const struct btf *targ_btf, size_t targ_name_off) bpf_core_names_match() argument 1440 bpf_core_enums_match(const struct btf *local_btf, const struct btf_type *local_t, const struct btf *targ_btf, const struct btf_type *targ_t) bpf_core_enums_match() argument 1479 bpf_core_composites_match(const struct btf *local_btf, const struct btf_type *local_t, const struct btf *targ_btf, const struct btf_type *targ_t, bool behind_ptr, int level) bpf_core_composites_match() argument 1544 __bpf_core_types_match(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, __u32 targ_id, bool behind_ptr, int level) __bpf_core_types_match() argument [all...] |
H A D | relo_core.h | 72 const struct btf *targ_btf, __u32 targ_id, int level); 74 const struct btf *targ_btf, __u32 targ_id); 75 int __bpf_core_types_match(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, 77 int bpf_core_types_match(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf,
|
H A D | libbpf_internal.h | 575 const struct btf *targ_btf,
|
H A D | libbpf.c | 5457 const struct btf *targ_btf, in bpf_core_add_cands() 5471 n = btf__type_cnt(targ_btf); in bpf_core_add_cands() 5473 t = btf__type_by_id(targ_btf, i); in bpf_core_add_cands() 5477 targ_name = btf__name_by_offset(targ_btf, t->name_off); in bpf_core_add_cands() 5498 cand->btf = targ_btf; in bpf_core_add_cands() 5684 const struct btf *targ_btf, __u32 targ_id) in bpf_core_types_are_compat() 5686 return __bpf_core_types_are_compat(local_btf, local_id, targ_btf, targ_id, 32); in bpf_core_types_are_compat() 5690 const struct btf *targ_btf, __u32 targ_id) in bpf_core_types_match() 5692 return __bpf_core_types_match(local_btf, local_id, targ_btf, targ_id, false, 32); in bpf_core_types_match() 5455 bpf_core_add_cands(struct bpf_core_cand *local_cand, size_t local_essent_len, const struct btf *targ_btf, const char *targ_btf_name, int targ_start_id, struct bpf_core_cand_list *cands) bpf_core_add_cands() argument 5683 bpf_core_types_are_compat(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, __u32 targ_id) bpf_core_types_are_compat() argument 5689 bpf_core_types_match(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, __u32 targ_id) bpf_core_types_match() argument
|
/kernel/linux/linux-5.10/tools/testing/selftests/bpf/prog_tests/ |
H A D | core_reloc.c | 337 struct btf *targ_btf = btf__parse(test->btf_src_file, NULL); in setup_type_id_case_local() local 343 CHECK(IS_ERR(targ_btf), "targ_btf", "failed: %ld\n", PTR_ERR(targ_btf))) { in setup_type_id_case_local() 345 btf__free(targ_btf); in setup_type_id_case_local() 402 btf__free(targ_btf); in setup_type_id_case_local() 408 struct btf *targ_btf = btf__parse(test->btf_src_file, NULL); in setup_type_id_case_success() local 415 targ_btf = btf__parse(test->btf_src_file, NULL); in setup_type_id_case_success() 417 exp->targ_struct = find_btf_type(targ_btf, "a_struct", BTF_KIND_STRUCT); in setup_type_id_case_success() 418 exp->targ_union = find_btf_type(targ_btf, "a_unio in setup_type_id_case_success() [all...] |
/kernel/linux/linux-6.6/tools/testing/selftests/bpf/prog_tests/ |
H A D | core_reloc.c | 427 struct btf *targ_btf = btf__parse(test->btf_src_file, NULL); in setup_type_id_case_local() local 432 if (!ASSERT_OK_PTR(local_btf, "local_btf") || !ASSERT_OK_PTR(targ_btf, "targ_btf")) { in setup_type_id_case_local() 434 btf__free(targ_btf); in setup_type_id_case_local() 491 btf__free(targ_btf); in setup_type_id_case_local() 497 struct btf *targ_btf; in setup_type_id_case_success() local 504 targ_btf = btf__parse(test->btf_src_file, NULL); in setup_type_id_case_success() 506 exp->targ_struct = find_btf_type(targ_btf, "a_struct", BTF_KIND_STRUCT); in setup_type_id_case_success() 507 exp->targ_union = find_btf_type(targ_btf, "a_union", BTF_KIND_UNION); in setup_type_id_case_success() 508 exp->targ_enum = find_btf_type(targ_btf, "an_enu in setup_type_id_case_success() [all...] |
/kernel/linux/linux-5.10/tools/lib/bpf/ |
H A D | libbpf.c | 4682 const struct btf *targ_btf) in bpf_core_find_cands() 4704 n = btf__get_nr_types(targ_btf); in bpf_core_find_cands() 4706 t = btf__type_by_id(targ_btf, i); in bpf_core_find_cands() 4710 targ_name = btf__name_by_offset(targ_btf, t->name_off); in bpf_core_find_cands() 4757 const struct btf *targ_btf, in bpf_core_fields_are_compat() 4764 targ_type = skip_mods_and_typedefs(targ_btf, targ_id, &targ_id); in bpf_core_fields_are_compat() 4783 targ_name = btf__name_by_offset(targ_btf, targ_type->name_off); in bpf_core_fields_are_compat() 4826 const struct btf *targ_btf, in bpf_core_match_member() 4837 targ_type = skip_mods_and_typedefs(targ_btf, targ_id, &targ_id); in bpf_core_match_member() 4863 targ_name = btf__name_by_offset(targ_btf, in bpf_core_match_member() 4680 bpf_core_find_cands(const struct btf *local_btf, __u32 local_type_id, const struct btf *targ_btf) bpf_core_find_cands() argument 4755 bpf_core_fields_are_compat(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, __u32 targ_id) bpf_core_fields_are_compat() argument 4824 bpf_core_match_member(const struct btf *local_btf, const struct bpf_core_accessor *local_acc, const struct btf *targ_btf, __u32 targ_id, struct bpf_core_spec *spec, __u32 *next_targ_id) bpf_core_match_member() argument 4915 bpf_core_types_are_compat(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, __u32 targ_id) bpf_core_types_are_compat() argument 4994 bpf_core_spec_match(struct bpf_core_spec *local_spec, const struct btf *targ_btf, __u32 targ_id, struct bpf_core_spec *targ_spec) bpf_core_spec_match() argument 5725 bpf_core_apply_relo(struct bpf_program *prog, const struct bpf_core_relo *relo, int relo_idx, const struct btf *local_btf, const struct btf *targ_btf, struct hashmap *cand_cache) bpf_core_apply_relo() argument 5902 struct btf *targ_btf; bpf_object__relocate_core() local [all...] |
/kernel/linux/linux-6.6/tools/bpf/bpftool/ |
H A D | gen.c | 1999 btfgen_find_cands(const struct btf *local_btf, const struct btf *targ_btf, __u32 local_id) in btfgen_find_cands() argument 2028 err = bpf_core_add_cands(&local_cand, local_essent_len, targ_btf, "vmlinux", 1, cands); in btfgen_find_cands()
|
/kernel/linux/linux-6.6/kernel/bpf/ |
H A D | btf.c | 8089 const struct btf *targ_btf, __u32 targ_id) in bpf_core_types_are_compat() 8091 return __bpf_core_types_are_compat(local_btf, local_id, targ_btf, targ_id, in bpf_core_types_are_compat() 8098 const struct btf *targ_btf, u32 targ_id) in bpf_core_types_match() 8100 return __bpf_core_types_match(local_btf, local_id, targ_btf, targ_id, false, in bpf_core_types_match() 8281 bpf_core_add_cands(struct bpf_cand_cache *cands, const struct btf *targ_btf, in bpf_core_add_cands() argument 8290 n = btf_nr_types(targ_btf); in bpf_core_add_cands() 8292 t = btf_type_by_id(targ_btf, i); in bpf_core_add_cands() 8296 targ_name = btf_name_by_offset(targ_btf, t->name_off); in bpf_core_add_cands() 8322 cands->cands[cands->cnt].btf = targ_btf; in bpf_core_add_cands() 8088 bpf_core_types_are_compat(const struct btf *local_btf, __u32 local_id, const struct btf *targ_btf, __u32 targ_id) bpf_core_types_are_compat() argument 8097 bpf_core_types_match(const struct btf *local_btf, u32 local_id, const struct btf *targ_btf, u32 targ_id) bpf_core_types_match() argument
|