Lines Matching refs:main_prog

6531 			      struct bpf_program *main_prog,
6545 if (main_prog != prog && !main_prog->func_info)
6549 &main_prog->func_info,
6550 &main_prog->func_info_cnt,
6551 &main_prog->func_info_rec_size);
6558 if (main_prog->func_info) {
6573 if (main_prog != prog && !main_prog->line_info)
6577 &main_prog->line_info,
6578 &main_prog->line_info_cnt,
6579 &main_prog->line_info_rec_size);
6586 if (main_prog->line_info) {
6619 static int append_subprog_relos(struct bpf_program *main_prog, struct bpf_program *subprog)
6621 int new_cnt = main_prog->nr_reloc + subprog->nr_reloc;
6625 if (main_prog == subprog)
6627 relos = libbpf_reallocarray(main_prog->reloc_desc, new_cnt, sizeof(*relos));
6635 memcpy(relos + main_prog->nr_reloc, subprog->reloc_desc,
6638 for (i = main_prog->nr_reloc; i < new_cnt; i++)
6643 main_prog->reloc_desc = relos;
6644 main_prog->nr_reloc = new_cnt;
6649 bpf_object__append_subprog_code(struct bpf_object *obj, struct bpf_program *main_prog,
6656 subprog->sub_insn_off = main_prog->insns_cnt;
6658 new_cnt = main_prog->insns_cnt + subprog->insns_cnt;
6659 insns = libbpf_reallocarray(main_prog->insns, new_cnt, sizeof(*insns));
6661 pr_warn("prog '%s': failed to realloc prog code\n", main_prog->name);
6664 main_prog->insns = insns;
6665 main_prog->insns_cnt = new_cnt;
6667 memcpy(main_prog->insns + subprog->sub_insn_off, subprog->insns,
6671 main_prog->name, subprog->insns_cnt, subprog->name);
6674 err = append_subprog_relos(main_prog, subprog);
6681 bpf_object__reloc_code(struct bpf_object *obj, struct bpf_program *main_prog,
6690 err = reloc_prog_func_and_line_info(obj, main_prog, prog);
6695 insn = &main_prog->insns[prog->sub_insn_off + insn_idx];
6762 err = bpf_object__append_subprog_code(obj, main_prog, subprog);
6765 err = bpf_object__reloc_code(obj, main_prog, subprog);
6770 /* main_prog->insns memory could have been re-allocated, so
6773 insn = &main_prog->insns[prog->sub_insn_off + insn_idx];