Lines Matching refs:cands
5446 void bpf_core_free_cands(struct bpf_core_cand_list *cands)
5448 if (!cands)
5451 free(cands->cands);
5452 free(cands);
5460 struct bpf_core_cand_list *cands)
5492 new_cands = libbpf_reallocarray(cands->cands, cands->len + 1,
5493 sizeof(*cands->cands));
5497 cand = &new_cands[cands->len];
5501 cands->cands = new_cands;
5502 cands->len++;
5607 struct bpf_core_cand_list *cands;
5625 cands = calloc(1, sizeof(*cands));
5626 if (!cands)
5631 err = bpf_core_add_cands(&local_cand, local_essent_len, main_btf, "vmlinux", 1, cands);
5636 if (cands->len)
5637 return cands;
5641 return cands;
5653 cands);
5658 return cands;
5660 bpf_core_free_cands(cands);
5747 struct bpf_core_cand_list *cands = NULL;
5763 !hashmap__find(cand_cache, local_id, &cands)) {
5764 cands = bpf_core_find_cands(prog->obj, local_btf, local_id);
5765 if (IS_ERR(cands)) {
5768 local_name, PTR_ERR(cands));
5769 return PTR_ERR(cands);
5771 err = hashmap__set(cand_cache, local_id, cands, NULL, NULL);
5773 bpf_core_free_cands(cands);
5778 return bpf_core_calc_relo_insn(prog_name, relo, relo_idx, local_btf, cands, specs_scratch,