Lines Matching refs:cands
4812 static void bpf_core_free_cands(struct bpf_core_cand_list *cands) in bpf_core_free_cands() argument
4814 free(cands->cands); in bpf_core_free_cands()
4815 free(cands); in bpf_core_free_cands()
4823 struct bpf_core_cand_list *cands) in bpf_core_add_cands() argument
4852 new_cands = libbpf_reallocarray(cands->cands, cands->len + 1, in bpf_core_add_cands()
4853 sizeof(*cands->cands)); in bpf_core_add_cands()
4857 cand = &new_cands[cands->len]; in bpf_core_add_cands()
4863 cands->cands = new_cands; in bpf_core_add_cands()
4864 cands->len++; in bpf_core_add_cands()
4965 struct bpf_core_cand_list *cands; in bpf_core_find_cands() local
4980 cands = calloc(1, sizeof(*cands)); in bpf_core_find_cands()
4981 if (!cands) in bpf_core_find_cands()
4986 err = bpf_core_add_cands(&local_cand, local_essent_len, main_btf, "vmlinux", 1, cands); in bpf_core_find_cands()
4991 if (cands->len) in bpf_core_find_cands()
4992 return cands; in bpf_core_find_cands()
4996 return cands; in bpf_core_find_cands()
5008 cands); in bpf_core_find_cands()
5013 return cands; in bpf_core_find_cands()
5015 bpf_core_free_cands(cands); in bpf_core_find_cands()
5135 struct bpf_core_cand_list *cands = NULL; in bpf_core_apply_relo() local
5171 !hashmap__find(cand_cache, type_key, (void **)&cands)) { in bpf_core_apply_relo()
5172 cands = bpf_core_find_cands(prog->obj, local_btf, local_id); in bpf_core_apply_relo()
5173 if (IS_ERR(cands)) { in bpf_core_apply_relo()
5176 local_name, PTR_ERR(cands)); in bpf_core_apply_relo()
5177 return PTR_ERR(cands); in bpf_core_apply_relo()
5179 err = hashmap__set(cand_cache, type_key, cands, NULL, NULL); in bpf_core_apply_relo()
5181 bpf_core_free_cands(cands); in bpf_core_apply_relo()
5186 return bpf_core_apply_relo_insn(prog_name, insn, insn_idx, relo, relo_idx, local_btf, cands); in bpf_core_apply_relo()