Re: [PATCH v7 0/6] perf annotate: Cross arch support + few fixes
On 2016/09/21 09:17PM, Ravi Bangoria wrote: > Currently Perf annotate support code navigation (branches and calls) > only when run on the same architecture where perf.data was recorded. > But, for example, record on powerpc server and annotate on client's > x86 desktop is not supported. > > This patchset adds supports for that. > > Example: > > Record on powerpc: > $ ./perf record -a > > Report -> Annotate on x86: > $ ./perf report -i perf.data.powerpc --vmlinux vmlinux.powerpc Hi Arnaldo, Can you please take this in for v4.10? We'd very much like to use this for better code annotation and browsing. FWIW, I have tested this on powerpc. Tested-by: Naveen N. Rao Thanks, Naveen
Re: [PATCH v7 0/6] perf annotate: Cross arch support + few fixes
Hello, Any updates? Arnaldo, if patches looks good to you, can you please pickup them. -Ravi On Wednesday 21 September 2016 09:17 PM, Ravi Bangoria wrote: > Currently Perf annotate support code navigation (branches and calls) > only when run on the same architecture where perf.data was recorded. > But, for example, record on powerpc server and annotate on client's > x86 desktop is not supported. > > This patchset adds supports for that. > > Example: > > Record on powerpc: > $ ./perf record -a > > Report -> Annotate on x86: > $ ./perf report -i perf.data.powerpc --vmlinux vmlinux.powerpc > > Changes in v7: > - Using string for normalized arch names instread of macros.(i.e. > removed patch 1/7 of v6) > - In patch 1/6, make norm_arch as global var instead of passing them > to each parser. > - In patch 1/6 and 6/6, little bit change in initializing instruction > list. > - patch 4/7 of v6 is already accepted. Removed that in v7. > - Address other review comments. > - Added more examples in patch descriptions. > > v6 link: > https://lkml.org/lkml/2016/8/19/411 > > Kim, I don't have arm test machine. Can you please help me to test > this on arm. > > > Kim Phillips (1): > perf annotate: cross arch annotate support fixes for ARM > > Naveen N. Rao (1): > perf annotate: Add support for powerpc > > Ravi Bangoria (4): > perf annotate: Add cross arch annotate support > perf annotate: Show raw form for jump instruction with indirect target > perf annotate: Support jump instruction with target as second operand > perf annotate: Fix jump target outside of function address range > > tools/perf/builtin-top.c | 2 +- > tools/perf/ui/browsers/annotate.c | 8 +- > tools/perf/ui/gtk/annotate.c | 2 +- > tools/perf/util/annotate.c| 259 > -- > tools/perf/util/annotate.h| 8 +- > 5 files changed, 232 insertions(+), 47 deletions(-) >
Re: [PATCH v7 0/6] perf annotate: Cross arch support + few fixes
On Thu, 22 Sep 2016 10:48:13 +0530 Ravi Bangoria wrote: > On Thursday 22 September 2016 01:04 AM, Kim Phillips wrote: > > On Wed, 21 Sep 2016 21:17:50 +0530 > > Ravi Bangoria wrote: > > > >> Kim, I don't have arm test machine. Can you please help me to test > >> this on arm. > > This works for me: hitting return on return instructions yields > > "Invalid jump offset", but I'll get that later. > > Thanks Kim. > > Hmm.. so, ins__find_arm does not contain logic for return instructions. > Navigation > with return instruction is working fine for x86 and powerpc. Right, for ARM, in order to match return instructions, 'lr' must be found to be the operand of the branch instruction, which is not contained in the 'name' variable passed to ins__find(). I don't want this to inhibit acceptance of this series, however: I plan on addressing it afterwards, unless, of course, it is perceived as a problem somehow (compatibility-wise, it is not because it is an error at the moment). Thanks, Kim
Re: [PATCH v7 0/6] perf annotate: Cross arch support + few fixes
On Thursday 22 September 2016 01:04 AM, Kim Phillips wrote: > On Wed, 21 Sep 2016 21:17:50 +0530 > Ravi Bangoria wrote: > >> Kim, I don't have arm test machine. Can you please help me to test >> this on arm. > This works for me: hitting return on return instructions yields > "Invalid jump offset", but I'll get that later. Thanks Kim. Hmm.. so, ins__find_arm does not contain logic for return instructions. Navigation with return instruction is working fine for x86 and powerpc. -Ravi > Thanks, > > Kim >
Re: [PATCH v7 0/6] perf annotate: Cross arch support + few fixes
On Wed, 21 Sep 2016 21:17:50 +0530 Ravi Bangoria wrote: > Kim, I don't have arm test machine. Can you please help me to test > this on arm. This works for me: hitting return on return instructions yields "Invalid jump offset", but I'll get that later. Thanks, Kim
[PATCH v7 0/6] perf annotate: Cross arch support + few fixes
Currently Perf annotate support code navigation (branches and calls) only when run on the same architecture where perf.data was recorded. But, for example, record on powerpc server and annotate on client's x86 desktop is not supported. This patchset adds supports for that. Example: Record on powerpc: $ ./perf record -a Report -> Annotate on x86: $ ./perf report -i perf.data.powerpc --vmlinux vmlinux.powerpc Changes in v7: - Using string for normalized arch names instread of macros.(i.e. removed patch 1/7 of v6) - In patch 1/6, make norm_arch as global var instead of passing them to each parser. - In patch 1/6 and 6/6, little bit change in initializing instruction list. - patch 4/7 of v6 is already accepted. Removed that in v7. - Address other review comments. - Added more examples in patch descriptions. v6 link: https://lkml.org/lkml/2016/8/19/411 Kim, I don't have arm test machine. Can you please help me to test this on arm. Kim Phillips (1): perf annotate: cross arch annotate support fixes for ARM Naveen N. Rao (1): perf annotate: Add support for powerpc Ravi Bangoria (4): perf annotate: Add cross arch annotate support perf annotate: Show raw form for jump instruction with indirect target perf annotate: Support jump instruction with target as second operand perf annotate: Fix jump target outside of function address range tools/perf/builtin-top.c | 2 +- tools/perf/ui/browsers/annotate.c | 8 +- tools/perf/ui/gtk/annotate.c | 2 +- tools/perf/util/annotate.c| 259 -- tools/perf/util/annotate.h| 8 +- 5 files changed, 232 insertions(+), 47 deletions(-) -- 2.5.5