aboutsummaryrefslogtreecommitdiffstats
path: root/tools/perf/util/symbol-elf.c
AgeCommit message (Expand)AuthorFilesLines
9 daysperf symbol-elf: Add missing puts on error pathIan Rogers1-1/+4
2025-11-26perf tools: Don't read build-ids from non-regular filesJames Clark1-6/+7
2025-10-02perf libbfd: Move libbfd functionality to its own fileIan Rogers1-90/+10
2025-09-04perf symbol-elf: Add support for the block argument for libbfdIan Rogers1-3/+7
2025-08-25perf symbol: Add blocking argument to filename__read_build_idIan Rogers1-4/+5
2025-06-06Merge tag 'riscv-for-linus-6.16-mw1' of git://git.kernel.org/pub/scm/linux/ke...Linus Torvalds1-0/+6
2025-06-05perf symbols: Ignore mapping symbols on riscvHaibo Xu1-0/+6
2025-05-28perf symbol: Move demangling code out of symbol-elf.cIan Rogers1-89/+3
2025-05-09perf test demangle-rust: Add Rust demangling testIan Rogers1-1/+1
2025-05-09perf symbol-elf: Integrate rust-v0 demanglingIan Rogers1-13/+34
2025-03-20perf dso: Add support for reading the e_machine type for a dsoIan Rogers1-27/+0
2025-03-10perf symbol: Support .gnu_debugdata for symbolsStephen Brennan1-2/+104
2025-01-10perf symbol-elf: Avoid a weak cxx_demangle_sym functionIan Rogers1-2/+4
2024-05-06perf symbol-elf: dso__load_sym_internal() reference count fixesIan Rogers1-26/+25
2024-05-06perf dso: Add reference count checking and accessor functionsIan Rogers1-47/+47
2024-02-12perf maps: Get map before returning in maps__find_by_nameIan Rogers1-1/+3
2024-02-08perf symbols: Slightly improve module file executable section mappingsAdrian Hunter1-2/+73
2023-12-06perf map: Simplify map_ip/unmap_ip and make 'struct map' smallerIan Rogers1-4/+2
2023-10-04tools/perf: Add text_end to "struct dso" to save .text section sizeAthira Rajeev1-1/+3
2023-08-11perf symbols: Fix DSO kernel load and symbol process to correctly map DSO to ...Athira Rajeev1-0/+2
2023-06-22perf symbol: Add LoongArch case in get_plt_sizes()Tiezhu Yang1-0/+8
2023-06-12perf symbol-elf: Correct holding a referenceIan Rogers1-2/+2
2023-05-26perf build: Don't compile demangle-cxx.cpp if not necessaryIan Rogers1-0/+27
2023-05-07Merge tag 'perf-tools-for-v6.4-3-2023-05-06' of git://git.kernel.org/pub/scm/...Linus Torvalds1-53/+41
2023-05-02perf symbols: Fix return incorrect build_id size in elf_read_build_id()Yang Jihong1-1/+1
2023-04-19perf map: Add set_ methods for map->{start,end,pgoff,pgoff,reloc,erange_warne...Arnaldo Carvalho de Melo1-13/+13
2023-04-12perf symbol: Use zfree() to reduce chances of use after freeArnaldo Carvalho de Melo1-2/+2
2023-04-08ELF: fix all "Elf" typosAlexey Dobriyan1-1/+1
2023-04-06perf map: Rename map_ip() and unmap_ip()Ian Rogers1-2/+2
2023-04-04perf map: Add accessor for start and endIan Rogers1-4/+4
2023-04-04perf map: Add accessor for dsoIan Rogers1-1/+1
2023-04-04perf maps: Add functions to access mapsIan Rogers1-1/+1
2023-04-04perf maps: Remove rb_node from struct mapIan Rogers1-2/+7
2023-04-04perf symbols: Fix unaligned access in get_x86_64_plt_disp()Adrian Hunter1-1/+4
2023-04-04perf symbols: Fix use-after-free in get_plt_got_name()Adrian Hunter1-1/+4
2023-03-14perf symbol: Add abi::__cxa_demangle C++ demangling supportIan Rogers1-30/+7
2023-02-02perf symbols: Get symbols for .plt.got for x86-64Adrian Hunter1-4/+157
2023-02-02perf symbols: Start adding support for .plt.got for x86Adrian Hunter1-0/+29
2023-02-01perf symbols: Allow for static executables with .pltAdrian Hunter1-10/+20
2023-02-01perf symbols: Allow for .plt without headerAdrian Hunter1-1/+15
2023-02-01perf symbols: Add support for IFUNC symbols for x86_64Adrian Hunter1-1/+37
2023-02-01perf symbols: Sort plt relocations for x86Adrian Hunter1-3/+57
2023-02-01perf symbols: Add support for x86 .plt.secAdrian Hunter1-7/+23
2023-02-01perf symbols: Correct plt entry sizes for x86Adrian Hunter1-4/+13
2023-01-22perf symbols: Check SHT_RELA and SHT_REL type earlierAdrian Hunter1-27/+27
2023-01-22perf symbols: Combine handling for SHT_RELA and SHT_RELAdrian Hunter1-48/+27
2023-01-22perf symbols: Allow for .plt entries with no symbolAdrian Hunter1-4/+10
2023-01-22perf symbols: Add symbol for .plt headerAdrian Hunter1-5/+21
2023-01-22perf symbols: Do not check ss->dynsym twiceAdrian Hunter1-3/+0
2023-01-22perf symbols: Slightly simplify 'err' usage in dso__synthesize_plt_symbols()Adrian Hunter1-5/+3
2023-01-22perf symbols: Check plt_entry_size is not zeroAdrian Hunter1-7/+11
2023-01-22perf symbols: Factor out get_plt_sizes()Adrian Hunter1-26/+28
2022-12-21perf symbol: Add filename__has_section()Namhyung Kim1-0/+28
2022-11-24perf symbol: correction while adjusting symbolAjay Kaher1-1/+1
2022-09-21perf kcore_copy: Do not check /proc/modules is unchangedAdrian Hunter1-5/+2
2022-08-01perf symbol: Fail to read phdr workaroundIan Rogers1-7/+20
2022-07-27perf symbol: Skip symbols if SHF_ALLOC flag is not setLeo Yan1-0/+11
2022-07-27perf symbol: Correct address for bss symbolsLeo Yan1-4/+41
2022-04-28perf symbol: Pass is_kallsyms to symbols__fixup_end()Namhyung Kim1-1/+1
2021-07-07perf top: Fix overflow in elf_sec__is_text()Riccardo Mancini1-3/+14
2021-07-07perf symbol-elf: Decode dynsym even if symtab existsMasami Hiramatsu1-28/+54
2021-06-04perf symbol-elf: Fix memory leak by freeing sdt_note.argsRiccardo Mancini1-0/+1
2021-03-23perf tools: Fix various typos in commentsIngo Molnar1-1/+1
2021-02-17perf tools: Add OCaml demanglingFabian Hemmer1-2/+7
2021-02-17perf symbols: Resolve symbols against debug file firstJiri Slaby1-1/+15
2020-12-17perf tools: Add support to read build id from compressed elfJiri Olsa1-2/+35
2020-10-14perf tools: Pass build_id object to dso__build_id_equal()Jiri Olsa1-2/+6
2020-10-14perf tools: Pass build id object to sysfs__read_build_id()Jiri Olsa1-6/+5
2020-10-14perf tools: Pass build_id object to filename__read_build_id()Jiri Olsa1-6/+10
2020-09-04perf dso: Use libbfd to read build_id and .gnu_debuglink sectionRemi Bernon1-3/+77
2020-08-13perf tools: Fix module symbol processingJiri Olsa1-3/+3
2020-08-13perf tools: Rename 'enum dso_kernel_type' to 'enum dso_space_type'Jiri Olsa1-1/+1
2020-05-28perf kcore_copy: Fix module map when there are no modules loadedAdrian Hunter1-0/+7
2020-03-23perf symbols: Consolidate symbol fixup issueLeo Yan1-2/+8
2019-12-20perf map: Set kmap->kmaps backpointer for main kernel map chunksArnaldo Carvalho de Melo1-0/+3
2019-11-26perf maps: Rename map_groups.h to maps.hArnaldo Carvalho de Melo1-1/+1
2019-11-26perf maps: Merge 'struct maps' with 'struct map_groups'Arnaldo Carvalho de Melo1-7/+7
2019-11-12perf symbols: Stop using map->groups, we can use kmaps insteadArnaldo Carvalho de Melo1-1/+1
2019-09-25perf copyfile: Move copyfile routines to separate filesArnaldo Carvalho de Melo1-1/+1
2019-09-20perf symbols: Add missing dso.h headerArnaldo Carvalho de Melo1-0/+1
2019-09-20perf tools: Remove util.h from where it is not neededArnaldo Carvalho de Melo1-0/+2
2019-08-31perf symbols: Move symsrc prototypes to a separate headerArnaldo Carvalho de Melo1-0/+1
2019-08-31perf symbol: Move C++ demangle defines to the only file using itArnaldo Carvalho de Melo1-0/+6
2019-07-09perf tools: Use list_del_init() more thorouglyArnaldo Carvalho de Melo1-3/+3
2019-07-09perf tools: Use zfree() where applicableArnaldo Carvalho de Melo1-5/+5
2019-07-09tools lib: Adopt zalloc()/zfree() from tools/perfArnaldo Carvalho de Melo1-0/+1
2019-07-09perf tools: Add missing headers, mostly stdlib.hArnaldo Carvalho de Melo1-0/+1
2019-06-25tools perf: Move from sane_ctype.h obtained from git to the Linux's originalArnaldo Carvalho de Melo1-1/+1
2019-06-25perf symbols: We need util.h in symbol-elf.c for zfree()Arnaldo Carvalho de Melo1-0/+1
2019-06-05perf symbols: Remove unused variable 'err'Leo Yan1-2/+1
2019-02-09Merge tag 'perf-core-for-mingo-5.1-20190206' of git://git.kernel.org/pub/scm/...Ingo Molnar1-0/+2
2019-02-06perf map: Move structs and prototypes for map groups to a separate headerArnaldo Carvalho de Melo1-0/+1
2019-02-06pref tools: Add missing map.h includesArnaldo Carvalho de Melo1-0/+1
2019-02-04perf symbols: Filter out hidden symbols from labelsJiri Olsa1-1/+8
2019-02-04perf symbols: Add fallback definitions for GELF_ST_VISIBILITY()Arnaldo Carvalho de Melo1-0/+14
2018-11-03Merge branch 'perf-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/ke...Linus Torvalds1-1/+11
2018-10-18perf symbols: Set PLT entry/header sizes properly on SparcDavid Miller1-1/+11
2018-09-24perf probe: Support SDT markers having reference counter (semaphore)Ravi Bangoria1-12/+34
2018-05-23perf kcore_copy: Amend the offset of sections that remap kernel textAdrian Hunter1-2/+51
2018-05-23perf kcore_copy: Copy x86 PTI entry trampoline sectionsAdrian Hunter1-0/+42
2018-05-23perf kcore_copy: Get rid of kernel_mapAdrian Hunter1-18/+52
2018-05-23perf kcore_copy: Iterate phdrsAdrian Hunter1-15/+10
2018-05-23perf kcore_copy: Layout sectionsAdrian Hunter1-3/+22
2018-05-23perf kcore_copy: Calculate offset from phnumAdrian Hunter1-1/+5
2018-05-23perf kcore_copy: Keep a count of phdrsAdrian Hunter1-5/+4
2018-05-23perf kcore_copy: Keep phdr data in a listAdrian Hunter1-0/+9
2018-04-27perf symbols: Split kernel symbol processing from dso__load_sym()Arnaldo Carvalho de Melo1-97/+108
2018-04-27perf symbols: Remove needless gotoArnaldo Carvalho de Melo1-6/+2
2018-04-27perf symbols: Unify symbol mapsArnaldo Carvalho de Melo1-33/+18
2018-04-26perf symbols: Use symbol type instead of map->typeArnaldo Carvalho de Melo1-1/+1
2018-04-26perf symbols: No need to special case MAP__FUNCTION in fixupArnaldo Carvalho de Melo1-3/+3
2018-04-26perf symbols: Store the ELF symbol type in the symbol structArnaldo Carvalho de Melo1-3/+4
2018-04-26perf tools: Use kallsyms__is_function()Arnaldo Carvalho de Melo1-1/+1
2018-04-26perf map: Shorten map_groups__find_by_name() signatureArnaldo Carvalho de Melo1-1/+1
2017-11-02License cleanup: add SPDX GPL-2.0 license identifier to files with no licenseGreg Kroah-Hartman1-0/+1
2017-09-28perf test: Fix vmlinux failure on s390xThomas Richter1-7/+1
2017-08-29perf symbols: Fix plt entry calculation for ARM and AARCH64Li Bin1-5/+22
2017-08-11perf report: Fix module symbol adjustment for s390xThomas Richter1-1/+7
2017-08-11perf record: Fix wrong size in perf_record_mmap for last kernel moduleThomas Richter1-1/+1
2017-08-11perf util: Take elf_name as const string in dso__demangle_symMilian Wolff1-1/+1
2017-06-08perf symbols: Keep DSO->symtab_type after decompressNamhyung Kim1-0/+2
2017-06-08perf tools: Introduce dso__decompress_kmodule_{fd,path}Namhyung Kim1-35/+1
2017-06-05perf symbols: Use correct filename for compressed modules in build-id cacheNamhyung Kim1-4/+1
2017-04-19perf tools: Move sane ctype stuff from util.h to sane_ctype.hArnaldo Carvalho de Melo1-1/+2
2017-03-27perf report: Find the inline stack for a given addressJin Yao1-0/+5
2017-03-21perf sdt: Add scanning of sdt probes argumentsAlexis Berlemont1-2/+23
2017-02-20perf utils: Check verbose flag properlyNamhyung Kim1-1/+1
2017-01-03perf symbols: Robustify reading of build-id from sysfsArnaldo Carvalho de Melo1-0/+6
2016-09-05perf symbols: Remove symbol_filter_t machineryArnaldo Carvalho de Melo1-23/+9
2016-09-05perf symbols: Mark if a symbol is idle in the libraryArnaldo Carvalho de Melo1-1/+1
2016-09-01perf symbols: Fixup symbol sizes before picking best onesArnaldo Carvalho de Melo1-1/+1
2016-09-01perf symbols: Check symbol_conf.allow_aliases for kallsyms loading tooArnaldo Carvalho de Melo1-2/+1
2016-09-01perf probe: Ignore vmlinux buildid if offline kernel is givenMasami Hiramatsu1-1/+1
2016-09-01perf symbols: Demangle symbols for synthesized @plt entries.Milian Wolff1-29/+52
2016-08-15perf symbols: Fix annotation of objects with debuginfo filesAnton Blanchard1-1/+2
2016-07-12perf symbols: Add Rust demanglingDavid Tolnay1-0/+8
2016-07-12perf tools: Add feature detection for gelf_getnote()Arnaldo Carvalho de Melo1-0/+2
2016-07-12perf symbols: Provide a GElf_Nhdr typedefArnaldo Carvalho de Melo1-0/+1
2016-07-04perf sdt: ELF support for SDTHemant Kumar1-0/+252
2016-07-04perf build: Add feature detection for libelf's elf_getshdrstrndx()Arnaldo Carvalho de Melo1-0/+8
2016-05-05perf symbols: Fix kallsyms perf test on ppc64leNaveen N. Rao1-3/+4
2016-04-08perf symbols: Adjust symbol for shared objectsWang Nan1-10/+3
2016-03-18perf symbols: Record text offset in dso to calculate objdump addressWang Nan1-6/+6
2016-02-05perf symbols: add Java demangling supportStephane Eranian1-0/+3
2015-12-10perf symbols: Fix dso__load_sym to put dsoMasami Hiramatsu1-2/+7
2015-11-19perf tools: Fix to put new map after inserting to map_groups in dso__load_symMasami Hiramatsu1-0/+2
2015-09-25perf tools: Fix copying of /proc/kcoreAdrian Hunter1-22/+13
2015-09-17Revert "perf symbols: Fix mismatched declarations for elf_getphdrnum"Arnaldo Carvalho de Melo1-1/+1
2015-08-17perf symbols: Fix annotation of vdsoAdrian Hunter1-0/+11
2015-07-29perf symbols: Fix mismatched declarations for elf_getphdrnumArnaldo Carvalho de Melo1-1/+1
2015-06-08perf tools: Reference count struct dsoArnaldo Carvalho de Melo1-1/+1
2015-05-29perf machine: No need to have two DSOs listsArnaldo Carvalho de Melo1-5/+1
2015-05-27perf tools: Reference count struct mapArnaldo Carvalho de Melo1-0/+2
2015-05-04perf symbols: Warn on build id mismatchNaveen N. Rao1-0/+1
2015-05-04perf probe ppc64le: Fix ppc64 ABIv2 symbol decodingAnanth N Mavinakayanahalli1-0/+4
2015-05-04perf probe ppc: Fix symbol fixup issues due to ELF typeNaveen N. Rao1-2/+6
2015-04-08perf kmaps: Check kmaps to make code more robustWang Nan1-5/+11
2015-03-24perf symbols: Save DSO loading errno to better report errorsArnaldo Carvalho de Melo1-10/+27
2015-03-23perf tools: Use kmod_path__parse in decompress_kmoduleJiri Olsa1-9/+11
2015-03-12perf symbols: Allow symbol alias when loading map for symbol nameNamhyung Kim1-1/+2
2015-03-02Merge 'tip/perf/urgent' into perf/core to pick fixesArnaldo Carvalho de Melo1-0/+5
2015-02-25perf symbols: Define EM_AARCH64 for older OSesDavid Ahern1-0/+5
2015-02-11perf symbols: Define STT_GNU_IFUNC for glibc 2.9 and older.Vinson Lee1-0/+4
2015-02-06perf symbols: Ignore mapping symbols on aarch64Victor Kamensky1-4/+3
2015-01-29perf symbols: Support to read compressed module from build-id cacheNamhyung Kim1-5/+8
2014-11-24perf symbols: Move bfd_demangle stubbing to its only userArnaldo Carvalho de Melo1-0/+21
2014-11-04perf symbols: Preparation for compressed kernel module supportNamhyung Kim1-1/+34
2014-09-30perf symbols: Encapsulate dsos list head into struct dsosWaiman Long1-1/+6
2014-09-17perf symbols: Ignore stripped vmlinux and fallback to kallsymsAnton Blanchard1-0/+8
2014-09-17perf tools: Disable kernel symbol demangling by defaultAvi Kivity1-1/+6
2014-08-13perf symbols: Fix missing label symbolsAdrian Hunter1-1/+1
2014-08-13perf symbols: Don't demangle parameters and such by defaultNamhyung Kim1-2/+5
2014-07-23perf tools: Add dso__type()Adrian Hunter1-0/+33
2014-07-23perf tools: Separate the VDSO map name from the VDSO dso nameAdrian Hunter1-1/+1
2014-07-16perf symbols: Record whether a dso is 64-bitAdrian Hunter1-0/+3
2014-07-16perf symbols: Fix missing GNU IFUNC symbolsAdrian Hunter1-1/+2
2014-04-20perf tools: Adjust symbols in VDSOVladimir Nikulichev1-0/+2
2014-03-11Merge branch 'perf/urgent' into perf/coreIngo Molnar1-3/+3
2014-03-10perf symbols: Fix crash in elf_section_by_nameJiri Olsa1-3/+3
2014-02-24perf symbols: Check return value of filename__read_debuglink()Stephane Eranian1-0/+2
2014-01-31perf symbols: Fix symbol annotation for relocated kernelAdrian Hunter1-0/+2
2014-01-27perf tools: Demangle kernel and kernel module symbols tooAvi Kivity1-1/+1
2014-01-16perf symbols: Export elf_section_by_name and reuseMasami Hiramatsu1-3/+2
2013-12-27perf tools: Use zfree to help detect use after free bugsArnaldo Carvalho de Melo1-1/+1
2013-12-13tools lib symbol: Start carving out symbol parsing routines from perfArnaldo Carvalho de Melo1-0/+1
2013-10-14perf symbols: Fix a mmap and munmap mismatched bugChenggang Qin1-5/+5
2013-10-14perf buildid-cache: Add ability to add kcore to the cacheAdrian Hunter1-0/+366
2013-10-14perf symbols: Workaround objdump difficulties with kcoreAdrian Hunter1-0/+229
2013-10-09tools/perf: Standardize feature support define names to: HAVE_{FEATURE}_SUPPORTIngo Molnar1-1/+1
2013-09-29Revert "perf symbols: Demangle cloned functions"Ingo Molnar1-26/+1
2013-09-25perf symbols: Demangle cloned functionsAndi Kleen1-1/+26
2013-09-19perf tools: Fix compile with libelf without get_phdrnumAdrian Hunter1-0/+16
2013-08-07perf symbols: Add support for reading from /proc/kcoreAdrian Hunter1-0/+51
2013-08-07perf tools: Make it possible to read object code from kernel modulesAdrian Hunter1-1/+24
2013-08-07perf tools: Make it possible to read object code from vmlinuxAdrian Hunter1-9/+91
2013-03-26perf report: Add --no-demangle optionNamhyung Kim1-3/+6
2013-01-24perf symbols: Include elf.h header regardless LIBELF_SUPPORTNamhyung Kim1-3/+0
2012-12-09perf symbols: Ignore ABS symbols when loading data mapsNamhyung Kim1-0/+11
2012-08-20perf symbols: Fix builds with NO_LIBELF setDavid Ahern1-0/+3
2012-08-13perf symbols: Use both runtime and debug imagesCody P Schafer1-0/+5