[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200224135141.GH16664@krava>
Date: Mon, 24 Feb 2020 14:51:41 +0100
From: Jiri Olsa <jolsa@...hat.com>
To: Ravi Bangoria <ravi.bangoria@...ux.ibm.com>
Cc: Jin Yao <yao.jin@...ux.intel.com>,
alexander.shishkin@...ux.intel.com, acme@...nel.org,
jolsa@...nel.org, peterz@...radead.org, mingo@...hat.com,
Linux-kernel@...r.kernel.org, ak@...ux.intel.com,
kan.liang@...el.com, yao.jin@...el.com
Subject: Re: [PATCH v3 2/2] Support interactive annotation of code without
symbols
On Mon, Feb 24, 2020 at 06:55:12PM +0530, Ravi Bangoria wrote:
> Hi Jin,
>
> On 2/24/20 7:52 AM, Jin Yao wrote:
> > For perf report on stripped binaries it is currently impossible to do
> > annotation. The annotation state is all tied to symbols, but there are
> > either no symbols, or symbols are not covering all the code.
> >
> > We should support the annotation functionality even without symbols.
> >
> > This patch fakes a symbol and the symbol name is the string of address.
> > After that, we just follow current annotation working flow.
> >
> > For example,
> >
> > 1. perf report
> >
> > Overhead Command Shared Object Symbol
> > 20.67% div libc-2.27.so [.] __random_r
> > 17.29% div libc-2.27.so [.] __random
> > 10.59% div div [.] 0x0000000000000628
> > 9.25% div div [.] 0x0000000000000612
> > 6.11% div div [.] 0x0000000000000645
> >
> > 2. Select the line of "10.59% div div [.] 0x0000000000000628" and ENTER.
> >
> > Annotate 0x0000000000000628
> > Zoom into div thread
> > Zoom into div DSO (use the 'k' hotkey to zoom directly into the kernel)
> > Browse map details
> > Run scripts for samples of symbol [0x0000000000000628]
> > Run scripts for all samples
> > Switch to another data file in PWD
> > Exit
> >
> > 3. Select the "Annotate 0x0000000000000628" and ENTER.
> >
> > Percent│
> > │
> > │
> > │ Disassembly of section .text:
> > │
> > │ 0000000000000628 <.text+0x68>:
> > │ divsd %xmm4,%xmm0
> > │ divsd %xmm3,%xmm1
> > │ movsd (%rsp),%xmm2
> > │ addsd %xmm1,%xmm0
> > │ addsd %xmm2,%xmm0
> > │ movsd %xmm0,(%rsp)
> >
> > Now we can see the dump of object starting from 0x628.
>
> If I press 'a' on address, it's not annotating. But if I annotate
> by pressing enter, like you explained, it works. Is it intentional?
I saw that too, but I thought it's unrelated issue,
because we played with that just recently
if you go through the 'enter' way and back, then the
next time 'a' works ;-)
jirka
Powered by blists - more mailing lists