Lines Matching refs:sym_name

172 				 Elf64_Sym *sym, const char *sym_name, int src_sym_idx);
1227 const char *sym_name; in linker_append_elf_syms() local
1240 sym_name = elf_strptr(obj->elf, str_sec_idx, sym->st_name); in linker_append_elf_syms()
1241 if (!sym_name) { in linker_append_elf_syms()
1246 err = linker_append_elf_sym(linker, obj, sym, sym_name, i); in linker_append_elf_syms()
1262 static struct glob_sym *find_glob_sym(struct bpf_linker *linker, const char *sym_name) in find_glob_sym() argument
1272 if (strcmp(name, sym_name) == 0) in find_glob_sym()
1298 static bool glob_sym_btf_matches(const char *sym_name, bool exact, in glob_sym_btf_matches() argument
1318 sym_name, n1, n2); in glob_sym_btf_matches()
1328 sym_name, btf_kflag(t1) ? "union" : "struct", btf_kind_str(t2)); in glob_sym_btf_matches()
1335 sym_name, btf_kflag(t2) ? "union" : "struct", btf_kind_str(t1)); in glob_sym_btf_matches()
1342 sym_name, btf_kind_str(t1), btf_kind_str(t2)); in glob_sym_btf_matches()
1358 sym_name, btf_kind_str(t1), n1, n2); in glob_sym_btf_matches()
1377 sym_name, btf_kind_str(t1), n1, t1->size, t2->size); in glob_sym_btf_matches()
1400 pr_warn("global '%s': incompatible func '%s' linkage\n", sym_name, n1); in glob_sym_btf_matches()
1412 pr_warn("global '%s': incompatible var '%s' linkage\n", sym_name, n1); in glob_sym_btf_matches()
1428 sym_name, btf_kind_str(t1), btf_vlen(t1), btf_vlen(t2)); in glob_sym_btf_matches()
1440 sym_name, i, n1, n2); in glob_sym_btf_matches()
1445 sym_name, i, n1); in glob_sym_btf_matches()
1448 if (!glob_sym_btf_matches(sym_name, exact, btf1, m1->type, btf2, m2->type)) in glob_sym_btf_matches()
1459 sym_name, btf_kind_str(t1), btf_vlen(t1), btf_vlen(t2)); in glob_sym_btf_matches()
1468 if (!glob_sym_btf_matches(sym_name, exact, btf1, m1->type, btf2, m2->type)) in glob_sym_btf_matches()
1487 sym_name, btf_kind_str(t1)); in glob_sym_btf_matches()
1492 static bool map_defs_match(const char *sym_name, in map_defs_match() argument
1517 && !glob_sym_btf_matches(sym_name, true /*exact*/, in map_defs_match()
1534 && !glob_sym_btf_matches(sym_name, true /*exact*/, in map_defs_match()
1566 snprintf(inner_map_name, sizeof(inner_map_name), "%s.inner", sym_name); in map_defs_match()
1576 pr_warn("global '%s': map %s mismatch\n", sym_name, reason); in map_defs_match()
1580 static bool glob_map_defs_match(const char *sym_name, in glob_map_defs_match() argument
1591 pr_warn("global '%s': invalid map definition type [%d]\n", sym_name, btf_id); in glob_map_defs_match()
1596 err = parse_btf_map_def(sym_name, obj->btf, t, true /*strict*/, &src_def, &src_inner_def); in glob_map_defs_match()
1598 pr_warn("global '%s': invalid map definition\n", sym_name); in glob_map_defs_match()
1605 err = parse_btf_map_def(sym_name, linker->btf, t, true /*strict*/, &dst_def, &dst_inner_def); in glob_map_defs_match()
1608 pr_warn("global '%s': invalid dst map definition\n", sym_name); in glob_map_defs_match()
1616 return map_defs_match(sym_name, linker->btf, &dst_def, &dst_inner_def, in glob_map_defs_match()
1620 static bool glob_syms_match(const char *sym_name, in glob_syms_match() argument
1630 pr_warn("BTF info is missing for global symbol '%s'\n", sym_name); in glob_syms_match()
1637 btf_kind_str(src_t), sym_name); in glob_syms_match()
1643 return glob_map_defs_match(sym_name, linker, glob_sym, obj, sym, btf_id); in glob_syms_match()
1645 if (!glob_sym_btf_matches(sym_name, true /*exact*/, in glob_syms_match()
1658 static int find_glob_sym_btf(struct src_obj *obj, Elf64_Sym *sym, const char *sym_name, in find_glob_sym_btf() argument
1680 if (strcmp(name, sym_name) != 0) in find_glob_sym_btf()
1696 if (strcmp(name, sym_name) != 0) in find_glob_sym_btf()
1705 sym_name, btf_id, vi->type); in find_glob_sym_btf()
1723 pr_warn("failed to find BTF info for global/extern symbol '%s'\n", sym_name); in find_glob_sym_btf()
1812 Elf64_Sym *sym, const char *sym_name, int src_sym_idx) in linker_append_elf_sym() argument
1850 err = find_glob_sym_btf(obj, sym, sym_name, &btf_sec_id, &btf_id); in linker_append_elf_sym()
1877 glob_sym = find_glob_sym(linker, sym_name); in linker_append_elf_sym()
1892 src_sym_idx, sym_name, obj->filename); in linker_append_elf_sym()
1896 if (!glob_syms_match(sym_name, linker, glob_sym, obj, sym, src_sym_idx, btf_id)) in linker_append_elf_sym()
1964 name_off = strset__add_str(linker->strtab_strs, sym_name); in linker_append_elf_sym()
2103 int sym_type, const char *sym_name) in find_sym_by_name() argument
2121 if (strcmp(sym_name, name) != 0) in find_sym_by_name()