Lines Matching refs:sec_name
375 char *sec_name; member
696 zfree(&prog->sec_name); in bpf_program__exit()
727 const char *name, size_t sec_idx, const char *sec_name, in bpf_object__init_prog() argument
732 sec_name, name, sec_off, insn_data_sz); in bpf_object__init_prog()
752 if (sec_name[0] == '?') { in bpf_object__init_prog()
755 sec_name++; in bpf_object__init_prog()
765 prog->sec_name = strdup(sec_name); in bpf_object__init_prog()
766 if (!prog->sec_name) in bpf_object__init_prog()
780 pr_warn("sec '%s': failed to allocate memory for prog '%s'\n", sec_name, name); in bpf_object__init_prog()
787 const char *sec_name, int sec_idx) in bpf_object__add_programs() argument
816 sec_name, sec_off); in bpf_object__add_programs()
822 sec_name, sec_off); in bpf_object__add_programs()
827 pr_warn("sec '%s': program '%s' is static and not supported\n", sec_name, name); in bpf_object__add_programs()
832 sec_name, name, sec_off / BPF_INSN_SZ, sec_off, prog_sz / BPF_INSN_SZ, prog_sz); in bpf_object__add_programs()
842 sec_name, name); in bpf_object__add_programs()
849 err = bpf_object__init_prog(obj, prog, name, sec_idx, sec_name, in bpf_object__add_programs()
1643 const char *sec_name; in bpf_object__init_global_data_maps() local
1658 sec_name = elf_sec_name(obj, elf_sec_by_idx(obj, sec_idx)); in bpf_object__init_global_data_maps()
1660 sec_name, sec_idx, in bpf_object__init_global_data_maps()
1666 sec_name = elf_sec_name(obj, elf_sec_by_idx(obj, sec_idx)); in bpf_object__init_global_data_maps()
1668 sec_name, sec_idx, in bpf_object__init_global_data_maps()
1673 sec_name = elf_sec_name(obj, elf_sec_by_idx(obj, sec_idx)); in bpf_object__init_global_data_maps()
1675 sec_name, sec_idx, in bpf_object__init_global_data_maps()
2800 const char *sec_name; in bpf_object__init_btf() local
2819 sec_name = btf__name_by_offset(obj->btf, sec->sec_name_off); in bpf_object__init_btf()
2820 if (str_is_empty(sec_name)) in bpf_object__init_btf()
2822 scn = elf_sec_by_name(obj, sec_name); in bpf_object__init_btf()
3162 const char *sec_name; in elf_sec_by_name() local
3165 sec_name = elf_sec_name(obj, scn); in elf_sec_by_name()
3166 if (!sec_name) in elf_sec_by_name()
3169 if (strcmp(sec_name, name) != 0) in elf_sec_by_name()
3683 const char *ext_name, *sec_name; in bpf_object__collect_externs() local
3740 sec_name = btf__name_by_offset(obj->btf, sec->name_off); in bpf_object__collect_externs()
3742 if (strcmp(sec_name, KCONFIG_SEC) == 0) { in bpf_object__collect_externs()
3768 } else if (strcmp(sec_name, KSYMS_SEC) == 0) { in bpf_object__collect_externs()
3774 pr_warn("unrecognized extern section '%s'\n", sec_name); in bpf_object__collect_externs()
4131 const char *relo_sec_name, *sec_name; in bpf_object__collect_prog_relos() local
4150 sec_name = elf_sec_name(obj, scn); in bpf_object__collect_prog_relos()
4151 if (!relo_sec_name || !sec_name) in bpf_object__collect_prog_relos()
4155 relo_sec_name, sec_idx, sec_name); in bpf_object__collect_prog_relos()
4204 relo_sec_name, i, sec_name, insn_idx); in bpf_object__collect_prog_relos()
5648 const char *sec_name; in bpf_object__relocate_core() local
5675 sec_name = btf__name_by_offset(obj->btf, sec->sec_name_off); in bpf_object__relocate_core()
5676 if (str_is_empty(sec_name)) { in bpf_object__relocate_core()
5681 pr_debug("sec '%s': found %d CO-RE relocations\n", sec_name, sec->num_info); in bpf_object__relocate_core()
5698 sec_name, i, insn_idx); in bpf_object__relocate_core()
6669 attach_name = strchr(prog->sec_name, '/'); in libbpf_prepare_prog_load()
6726 prog->name, prog->sec_name); in bpf_object_load_prog()
7115 static const struct bpf_sec_def *find_sec_def(const char *sec_name);
7123 prog->sec_def = find_sec_def(prog->sec_name); in bpf_object_init_progs()
7127 prog->name, prog->sec_name); in bpf_object_init_progs()
8290 return prog->sec_name; in bpf_program__section_name()
8637 static bool sec_def_matches(const struct bpf_sec_def *sec_def, const char *sec_name) in sec_def_matches() argument
8643 if (str_has_pfx(sec_name, sec_def->sec)) in sec_def_matches()
8654 if (strncmp(sec_name, sec_def->sec, len) != 0) in sec_def_matches()
8657 if (sec_name[len] == '\0' || sec_name[len] == '/') in sec_def_matches()
8662 return strcmp(sec_name, sec_def->sec) == 0; in sec_def_matches()
8665 static const struct bpf_sec_def *find_sec_def(const char *sec_name) in find_sec_def() argument
8673 if (sec_def_matches(sec_def, sec_name)) in find_sec_def()
8680 if (sec_def_matches(sec_def, sec_name)) in find_sec_def()
8908 map->name, prog->name, prog->sec_name, prog->type, in bpf_object__collect_st_ops_relos()
10323 if (strcmp(prog->sec_name, "kprobe") == 0 || strcmp(prog->sec_name, "kretprobe") == 0) in attach_kprobe()
10326 opts.retprobe = str_has_pfx(prog->sec_name, "kretprobe/"); in attach_kprobe()
10328 func_name = prog->sec_name + sizeof("kretprobe/") - 1; in attach_kprobe()
10330 func_name = prog->sec_name + sizeof("kprobe/") - 1; in attach_kprobe()
10357 if (strcmp(prog->sec_name, "ksyscall") == 0 || strcmp(prog->sec_name, "kretsyscall") == 0) in attach_ksyscall()
10360 opts.retprobe = str_has_pfx(prog->sec_name, "kretsyscall/"); in attach_ksyscall()
10362 syscall_name = prog->sec_name + sizeof("kretsyscall/") - 1; in attach_ksyscall()
10364 syscall_name = prog->sec_name + sizeof("ksyscall/") - 1; in attach_ksyscall()
10380 if (strcmp(prog->sec_name, "kprobe.multi") == 0 || in attach_kprobe_multi()
10381 strcmp(prog->sec_name, "kretprobe.multi") == 0) in attach_kprobe_multi()
10384 opts.retprobe = str_has_pfx(prog->sec_name, "kretprobe.multi/"); in attach_kprobe_multi()
10386 spec = prog->sec_name + sizeof("kretprobe.multi/") - 1; in attach_kprobe_multi()
10388 spec = prog->sec_name + sizeof("kprobe.multi/") - 1; in attach_kprobe_multi()
10852 n = sscanf(prog->sec_name, "%m[^/]/%m[^:]:%m[a-zA-Z0-9_.]+%li", in attach_uprobe()
10861 prog->name, prog->sec_name); in attach_uprobe()
10878 prog->sec_name); in attach_uprobe()
10954 const char *sec_name; in attach_usdt() local
10957 sec_name = bpf_program__section_name(prog); in attach_usdt()
10958 if (strcmp(sec_name, "usdt") == 0) { in attach_usdt()
10964 n = sscanf(sec_name, "usdt/%m[^:]:%m[^:]:%m[^:]", &path, &provider, &name); in attach_usdt()
10967 sec_name); in attach_usdt()
11074 char *sec_name, *tp_cat, *tp_name; in attach_tp() local
11079 if (strcmp(prog->sec_name, "tp") == 0 || strcmp(prog->sec_name, "tracepoint") == 0) in attach_tp()
11082 sec_name = strdup(prog->sec_name); in attach_tp()
11083 if (!sec_name) in attach_tp()
11087 if (str_has_pfx(prog->sec_name, "tp/")) in attach_tp()
11088 tp_cat = sec_name + sizeof("tp/") - 1; in attach_tp()
11090 tp_cat = sec_name + sizeof("tracepoint/") - 1; in attach_tp()
11093 free(sec_name); in attach_tp()
11100 free(sec_name); in attach_tp()
11150 if (!str_has_pfx(prog->sec_name, prefixes[i])) in attach_raw_tp()
11155 if (prog->sec_name[pfx_len] == '\0') in attach_raw_tp()
11158 if (prog->sec_name[pfx_len] != '/') in attach_raw_tp()
11161 tp_name = prog->sec_name + pfx_len + 1; in attach_raw_tp()
11167 prog->name, prog->sec_name); in attach_raw_tp()