Lines Matching full:symbols
192 void symbols__fixup_duplicate(struct rb_root_cached *symbols) in symbols__fixup_duplicate() argument
200 nd = rb_first_cached(symbols); in symbols__fixup_duplicate()
216 rb_erase_cached(&next->rb_node, symbols); in symbols__fixup_duplicate()
223 rb_erase_cached(&curr->rb_node, symbols); in symbols__fixup_duplicate()
229 /* Update zero-sized symbols using the address of the next symbol */
230 void symbols__fixup_end(struct rb_root_cached *symbols, bool is_kallsyms) in symbols__fixup_end() argument
232 struct rb_node *nd, *prevnd = rb_first_cached(symbols); in symbols__fixup_end()
256 * In kallsyms, it determines module symbols using '[' character in symbols__fixup_end()
332 void symbols__delete(struct rb_root_cached *symbols) in symbols__delete() argument
335 struct rb_node *next = rb_first_cached(symbols); in symbols__delete()
340 rb_erase_cached(&pos->rb_node, symbols); in symbols__delete()
345 void __symbols__insert(struct rb_root_cached *symbols, in __symbols__insert() argument
348 struct rb_node **p = &symbols->rb_root.rb_node; in __symbols__insert()
376 rb_insert_color_cached(&sym->rb_node, symbols, leftmost); in __symbols__insert()
379 void symbols__insert(struct rb_root_cached *symbols, struct symbol *sym) in symbols__insert() argument
381 __symbols__insert(symbols, sym, false); in symbols__insert()
384 static struct symbol *symbols__find(struct rb_root_cached *symbols, u64 ip) in symbols__find() argument
388 if (symbols == NULL) in symbols__find()
391 n = symbols->rb_root.rb_node; in symbols__find()
407 static struct symbol *symbols__first(struct rb_root_cached *symbols) in symbols__first() argument
409 struct rb_node *n = rb_first_cached(symbols); in symbols__first()
417 static struct symbol *symbols__last(struct rb_root_cached *symbols) in symbols__last() argument
419 struct rb_node *n = rb_last(&symbols->rb_root); in symbols__last()
485 static struct symbol *symbols__find_by_name(struct symbol *symbols[], in symbols__find_by_name() argument
504 cmp = symbol__match_symbol_name(symbols[i]->name, name, includes); in symbols__find_by_name()
513 s = symbols[i]; in symbols__find_by_name()
520 struct symbol *tmp = symbols[i - 1]; in symbols__find_by_name()
530 assert(!found_idx || !s || s == symbols[*found_idx]); in symbols__find_by_name()
705 * These are symbols in the kernel image, so make sure that
757 /* Ignore local symbols for ARM modules */ in map__process_kallsym_symbol()
762 * module symbols are not sorted so we add all in map__process_kallsym_symbol()
763 * symbols, setting length to 0, and rely on in map__process_kallsym_symbol()
770 * We will pass the symbols to the filter later, in in map__process_kallsym_symbol()
832 /* Symbols have been adjusted */ in maps__split_kallsyms_for_kcore()
839 * Split the symbols into maps, making sure there are no overlaps, i.e. the
882 * We assume all symbols of a module are in maps__split_kallsyms()
885 * symbols are in its kmap. Mark it as in maps__split_kallsyms()
914 * These symbols are not needed anymore since the in maps__split_kallsyms()
916 * symbols instead. Avoid having to deal with in maps__split_kallsyms()
919 * symbols at this point. in maps__split_kallsyms()
1415 * If one of the corresponding symbols is there, assume the in dso__load_kcore()
1599 asymbol **symbols, *sym; in dso__load_bfd_symbols() local
1626 symbols = malloc(symbols_size); in dso__load_bfd_symbols()
1627 if (!symbols) in dso__load_bfd_symbols()
1630 symbols_count = bfd_canonicalize_symtab(abfd, symbols); in dso__load_bfd_symbols()
1637 if (!strcmp(bfd_asymbol_name(symbols[i]), "__ImageBase") || in dso__load_bfd_symbols()
1638 !strcmp(bfd_asymbol_name(symbols[i]), "__image_base__")) in dso__load_bfd_symbols()
1642 /* PE symbols can only have 4 bytes, so use .text high bits */ in dso__load_bfd_symbols()
1644 + (u32)bfd_asymbol_value(symbols[i]); in dso__load_bfd_symbols()
1653 qsort(symbols, symbols_count, sizeof(asymbol *), bfd_symbols__cmpvalue); in dso__load_bfd_symbols()
1659 sym = symbols[i]; in dso__load_bfd_symbols()
1665 bfd_asymbol_section(symbols[i + 1]) == section && in dso__load_bfd_symbols()
1666 bfd2elf_binding(symbols[i + 1]) < 0) in dso__load_bfd_symbols()
1670 bfd_asymbol_section(symbols[i + 1]) == section) in dso__load_bfd_symbols()
1671 len = symbols[i + 1]->value - sym->value; in dso__load_bfd_symbols()
1693 free(symbols); in dso__load_bfd_symbols()
2026 pr_debug("Using %s for symbols\n", symfs_vmlinux); in dso__load_vmlinux()
2224 pr_debug("Using %s for symbols\n", kallsyms_filename); in dso__load_kernel_sym()
2269 pr_debug("Using %s for symbols\n", kallsyms_filename); in dso__load_guest_kernel_sym()
2515 * A path to symbols of "/" is identical to "" in symbol__init()