Messages in this thread | | | Subject | Re: [PATCH v3 2/2] Support interactive annotation of code without symbols | From | "Jin, Yao" <> | Date | Mon, 24 Feb 2020 23:46:51 +0800 |
| |
On 2/24/2020 9:56 PM, Ravi Bangoria wrote: > > > 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) > This might be an add on... > > Even though there are samples on a particular instruction, 'Percent' column > is empty, I guess, because we don't have symbol length? > > Should we show 'global percent'? Or nr samples? Will it be useful? > > Ravi >
As the mail I reply to Jiri, if we use the Jiri's idea, we can collect the hits for dummy symbols then we can show the percent of dummy symbol here.
Thanks Jin Yao
| |