Lines Matching refs:cands

5299 void bpf_core_free_cands(struct bpf_core_cand_list *cands)  in bpf_core_free_cands()  argument
5301 if (!cands) in bpf_core_free_cands()
5304 free(cands->cands); in bpf_core_free_cands()
5305 free(cands); in bpf_core_free_cands()
5313 struct bpf_core_cand_list *cands) in bpf_core_add_cands() argument
5345 new_cands = libbpf_reallocarray(cands->cands, cands->len + 1, in bpf_core_add_cands()
5346 sizeof(*cands->cands)); in bpf_core_add_cands()
5350 cand = &new_cands[cands->len]; in bpf_core_add_cands()
5354 cands->cands = new_cands; in bpf_core_add_cands()
5355 cands->len++; in bpf_core_add_cands()
5456 struct bpf_core_cand_list *cands; in bpf_core_find_cands() local
5474 cands = calloc(1, sizeof(*cands)); in bpf_core_find_cands()
5475 if (!cands) in bpf_core_find_cands()
5480 err = bpf_core_add_cands(&local_cand, local_essent_len, main_btf, "vmlinux", 1, cands); in bpf_core_find_cands()
5485 if (cands->len) in bpf_core_find_cands()
5486 return cands; in bpf_core_find_cands()
5490 return cands; in bpf_core_find_cands()
5502 cands); in bpf_core_find_cands()
5507 return cands; in bpf_core_find_cands()
5509 bpf_core_free_cands(cands); in bpf_core_find_cands()
5602 struct bpf_core_cand_list *cands = NULL; in bpf_core_resolve_relo() local
5618 !hashmap__find(cand_cache, type_key, (void **)&cands)) { in bpf_core_resolve_relo()
5619 cands = bpf_core_find_cands(prog->obj, local_btf, local_id); in bpf_core_resolve_relo()
5620 if (IS_ERR(cands)) { in bpf_core_resolve_relo()
5623 local_name, PTR_ERR(cands)); in bpf_core_resolve_relo()
5624 return PTR_ERR(cands); in bpf_core_resolve_relo()
5626 err = hashmap__set(cand_cache, type_key, cands, NULL, NULL); in bpf_core_resolve_relo()
5628 bpf_core_free_cands(cands); in bpf_core_resolve_relo()
5633 return bpf_core_calc_relo_insn(prog_name, relo, relo_idx, local_btf, cands, specs_scratch, in bpf_core_resolve_relo()