Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1604158

[PATCH 4/4] perf annotate: More exactly grep -v of the objdump command

From Taeung Song <treeze.taeung@gmail.com>
Newsgroups linux.kernel
Subject [PATCH 4/4] perf annotate: More exactly grep -v of the objdump command
Date 2017-03-20 04:00 +0100
Message-ID <tmVI5-6BY-9@gated-at.bofh.it> (permalink)
References <tmVI5-6BY-3@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


grep -v "file name" in the objdump command
cause a side effect eliminating filename:linenr of
output of 'objdump -l' if the object file name and
source file name are about the same so fix it.

The objdump command in symbol__disassemble() can be as below

    $ objdump -l -d -S -C /home/taeung/hello --start-address=...

    /home/taeung/hello:     file format elf64-x86-64

    Disassembly of section .text:

    0000000000400526 <main>:
    main():
    /home/taeung/hello.c:4

    void main()
    {
      400526:	55                   	push   %rbp
      400527:	48 89 e5             	mov    %rsp,%rbp
    /home/taeung/hello.c:5
    ...

But currently it use grep -v "file name" e.g. "/home/taeung/hello"
in the objdump command to remove the first line containing file name
and file format such as,

Before:
    $ objdump -l -d -S -C /home/taeung/hello | grep /home/taeung/hello

But it cause a side effect removing filename:linenr
because the object file and source file has same name
e.g. "/home/taueng/hello", "/home/taeung/hello.c"

So more exactly grep -v as below
to correctly remove the one line
e.g. "/home/taeung/hello:     file format elf64-x86-64"

After:
    $ objdump -l -d -S -C /home/taeung/hello | grep /home/taeung/hello:

Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Jiri Olsa <jolsa@redhat.com>
Signed-off-by: Taeung Song <treeze.taeung@gmail.com>
---
 tools/perf/util/annotate.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c
index 63130ec..e49eb7e 100644
--- a/tools/perf/util/annotate.c
+++ b/tools/perf/util/annotate.c
@@ -1443,7 +1443,7 @@ int symbol__disassemble(struct symbol *sym, struct map *map, const char *arch_na
 	snprintf(command, sizeof(command),
 		 "%s %s%s --start-address=0x%016" PRIx64
 		 " --stop-address=0x%016" PRIx64
-		 " -l -d %s %s -C %s 2>/dev/null|grep -v %s|expand",
+		 " -l -d %s %s -C %s 2>/dev/null|grep -v %s: |expand",
 		 objdump_path ? objdump_path : "objdump",
 		 disassembler_style ? "-M " : "",
 		 disassembler_style ? disassembler_style : "",
-- 
2.7.4

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[PATCH 0/4] perf annotate: Bugfixes Taeung Song <treeze.taeung@gmail.com> - 2017-03-20 04:00 +0100
  [PATCH 3/4] perf annotate: Fix missing setting nr samples on source_line Taeung Song <treeze.taeung@gmail.com> - 2017-03-20 04:00 +0100
  [PATCH 4/4] perf annotate: More exactly grep -v of the objdump command Taeung Song <treeze.taeung@gmail.com> - 2017-03-20 04:00 +0100
    Re: [PATCH 4/4] perf annotate: More exactly grep -v of the objdump  command Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-03-21 15:50 +0100
      Re: [PATCH 4/4] perf annotate: More exactly grep -v of the objdump  command Taeung Song <treeze.taeung@gmail.com> - 2017-03-21 17:30 +0100
        Re: [PATCH 4/4] perf annotate: More exactly grep -v of the objdump  command Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-03-21 19:40 +0100
          Re: [PATCH 4/4] perf annotate: More exactly grep -v of the objdump  command Taeung Song <treeze.taeung@gmail.com> - 2017-03-22 08:40 +0100
        Re: [PATCH 4/4] perf annotate: More exactly grep -v of the objdump  command Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-03-21 19:40 +0100
      Re: [PATCH 4/4] perf annotate: More exactly grep -v of the objdump  command Taeung Song <taeung.dev@gmail.com> - 2017-03-21 17:30 +0100
    [tip:perf/core] perf annotate: More exactly grep -v of the objdump  command tip-bot for Taeung Song <tipbot@zytor.com> - 2017-03-24 20:00 +0100
  [PATCH 2/4] perf annotate: Avoid division by zero when calculating percent Taeung Song <treeze.taeung@gmail.com> - 2017-03-20 04:00 +0100
    Re: [PATCH 2/4] perf annotate: Avoid division by zero when  calculating percent Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-03-20 19:20 +0100
      Re: [PATCH 2/4] perf annotate: Avoid division by zero when  calculating percent Taeung Song <treeze.taeung@gmail.com> - 2017-03-20 23:20 +0100
        Re: [PATCH 2/4] perf annotate: Avoid division by zero when  calculating percent Taeung Song <treeze.taeung@gmail.com> - 2017-03-20 23:30 +0100
          Re: [PATCH 2/4] perf annotate: Avoid division by zero when  calculating percent Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-03-21 15:20 +0100
            Re: [PATCH 2/4] perf annotate: Avoid division by zero when  calculating percent Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-03-21 15:40 +0100
              Re: [PATCH 2/4] perf annotate: Avoid division by zero when  calculating percent Taeung Song <treeze.taeung@gmail.com> - 2017-03-21 15:50 +0100
              Re: [PATCH 2/4] perf annotate: Avoid division by zero when  calculating percent Taeung Song <treeze.taeung@gmail.com> - 2017-03-22 13:10 +0100

csiph-web