lkml.org 
[lkml]   [2010]   [Jun]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Date
    Subject[PATCH v5 12/14] perf: Dont adjust symbols on name lookup
    perf_adjust_symbol_name.patch

    From: Srikar Dronamraju <srikar@linux.vnet.ibm.com>

    Adjusting symbols is not needed if we are searching by name even
    if the symbols correspond to user space objects.
    Infact if we adjust and search symbols by name, we get incorrect
    results.

    Signed-off-by: Srikar Dronamraju <srikar@linux.vnet.ibm.com>
    ---

    tools/perf/util/symbol.c | 6 ++++--
    1 files changed, 4 insertions(+), 2 deletions(-)


    diff --git a/tools/perf/util/symbol.c b/tools/perf/util/symbol.c
    index b63e571..2d53dfc 100644
    --- a/tools/perf/util/symbol.c
    +++ b/tools/perf/util/symbol.c
    @@ -992,12 +992,14 @@ static int dso__load_sym(struct dso *self, struct map *map, const char *name,
    nr_syms = shdr.sh_size / shdr.sh_entsize;

    memset(&sym, 0, sizeof(sym));
    - if (self->kernel == DSO_TYPE_USER) {
    + if (self->kernel != DSO_TYPE_USER || symbol_conf.sort_by_name)
    + self->adjust_symbols = 0;
    + else {
    self->adjust_symbols = (ehdr.e_type == ET_EXEC ||
    elf_section_by_name(elf, &ehdr, &shdr,
    ".gnu.prelink_undo",
    NULL) != NULL);
    - } else self->adjust_symbols = 0;
    + }

    elf_symtab__for_each_symbol(syms, nr_syms, idx, sym) {
    struct symbol *f;

    \
     
     \ /
      Last update: 2010-06-14 10:35    [W:0.019 / U:0.656 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site