[PATCH] perf kvm record/report: 'unprocessable sample' error while recording/reporting guest data

2015-12-06 Thread Ravi Bangoria
ase before refactoring of code in aforementioned commit. This patch is generated from acme perf/core branch. Below I've mention an example that demonstrate the behaviour before and after applying patch. Before applying patch: [Note: One needs to run guest before recording data in host] ravi@ravi-bangoria

Re: [PATCH] perf kvm record/report: 'unprocessable sample' error while recording/reporting guest data

2015-12-16 Thread Ravi Bangoria
Hi acme, I sent this patch few days ago. Unfortunately nobody has payed attention. Can you please pick this up. Regards, Ravi On Monday 07 December 2015 12:25 PM, Ravi Bangoria wrote: While recording guest samples in host using perf kvm record, it will populate unprocessable sample error

[PATCH] perf/kvm: Guest Symbol Resolution for powerpc

2015-12-29 Thread Ravi Bangoria
0.00% :9689[guest.kernel.kallsyms] [g] .arch_local_irq_restore Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> Signed-off-by: Hemant Kumar <hem...@linux.vnet.ibm.com> --- tools/perf/arch/powerpc/util/Build | 2 + tools/perf/arch/powerpc/util/evl

[RFC 4/6] perf annotate: generalize handling of ret instructions

2016-06-24 Thread Ravi Bangoria
From: "Naveen N. Rao" Introduce helper to detect ret instructions and use the same in the tui. A helper is needed since some architectures such as powerpc have more than one return instruction. Signed-off-by: Naveen N. Rao ---

[RFC 5/6] perf annotate: add powerpc support

2016-06-24 Thread Ravi Bangoria
net.ibm.com> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/annotate.c | 64 ++ 1 file changed, 64 insertions(+) diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index 634daf5..ad01825

[RFC 6/6] perf: add more triplets

2016-06-24 Thread Ravi Bangoria
: $ perf report -i perf.data.powerpc --vmlinux vmlinux.powerpc Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/arch/common.c | 17 + 1 file changed, 17 insertions(+) diff --git a/tools/perf/arch/common.c b/tools/perf/arch/common.c index 7da6ac7..9

[RFC 3/6] perf annotate: Enable cross arch annotate

2016-06-24 Thread Ravi Bangoria
suggest best way to do it. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/builtin-top.c | 2 +- tools/perf/ui/browsers/annotate.c | 5 +- tools/perf/ui/gtk/annotate.c | 6 +- tools/perf/util/annotate.c

[RFC 1/6] perf: Remove unused hist_entry__annotate function

2016-06-24 Thread Ravi Bangoria
hist_entry__annotate looks part of API but I don't find any caller of this function. Removing it. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/annotate.c | 5 - tools/perf/util/annotate.h | 2 -- 2 files changed, 7 deletions(-) diff --git a/tool

[RFC 2/6] perf annotate: Define macro for arch names

2016-06-24 Thread Ravi Bangoria
Define macro for each arch name and use them instead of using arch name as string. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/arch/common.c | 36 ++-- tools/perf/arch/common.h | 10 ++ tools/per

[RFC 0/6] perf annotate: Enable cross arch annotate

2016-06-24 Thread Ravi Bangoria
-i perf.data.powerpc --vmlinux vmlinux.powerpc Naveen N. Rao (2): perf annotate: generalize handling of ret instructions perf annotate: add powerpc support Ravi Bangoria (4): perf: Remove unused hist_entry__annotate function perf annotate: Define macro for arch names perf annotate: Enable cross a

[PATCH 2/4] perf annotate: Enable cross arch annotate

2016-06-28 Thread Ravi Bangoria
instruction defined outside of that also contains arm instructions. Apart from that, 'call__parse()' and 'move__parse()' contains #ifdef __arm__ directive. I've changed it to if (!strcmp(norm_arch, "arm")). But I've not tested this as well. Signed-off-by: Ravi Bangoria &

[PATCH 1/4] perf: Utility function to fetch arch from evsel

2016-06-28 Thread Ravi Bangoria
Add Utility function to fetch 'arch' from 'evsel'. (evsel->env->arch) Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/evsel.c | 7 +++ tools/perf/util/evsel.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/tools/perf/util/evsel.c b/too

[PATCH 4/4] perf annotate: Define macro for arch names

2016-06-28 Thread Ravi Bangoria
Define macro for each arch name and use them instead of using arch name as string. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/arch/common.c | 36 ++-- tools/perf/arch/common.h | 11 +++ tool

Re: [RFC 3/6] perf annotate: Enable cross arch annotate

2016-06-28 Thread Ravi Bangoria
On Monday 27 June 2016 10:46 PM, Arnaldo Carvalho de Melo wrote: Em Fri, Jun 24, 2016 at 05:23:57PM +0530, Ravi Bangoria escreveu: Change current data structures and function to enable cross arch annotate and add support for x86 and arm instructions. Current implementation does not contain

[PATCH 3/4] perf annotate: add powerpc support

2016-06-28 Thread Ravi Bangoria
net.ibm.com> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/annotate.c | 64 ++ 1 file changed, 64 insertions(+) diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index 36a5825..96c6610

[PATCH 0/4] perf annotate: Enable cross arch annotate

2016-06-28 Thread Ravi Bangoria
-i perf.data.powerpc --vmlinux vmlinux.powerpc Changes in [PATCH] vs [RFC] - Removed global var 'arch__ins' and pass arch info till ins__find Naveen N. Rao (1): perf annotate: add powerpc support Ravi Bangoria (3): perf: Utility function to fetch arch perf annotate: Enable cross arch annotate p

Re: [PATCH 3/4] perf annotate: add powerpc support

2016-06-29 Thread Ravi Bangoria
Thanks David. On Tuesday 28 June 2016 09:37 PM, David Laight wrote: From: Ravi Bangoria Sent: 28 June 2016 12:37 Powerpc has long list of branch instructions and hardcoding them in table appears to be error-prone. So, add new function to find instruction instead of creating table. Signed-off

Re: [PATCH v2 2/3] perf kvm: enable record|report feature on powerpc

2016-02-09 Thread Ravi Bangoria
Hi acme, On Tuesday 02 February 2016 02:36 PM, Ravi Bangoria wrote: HI acme, On Tuesday 02 February 2016 02:36 AM, Arnaldo Carvalho de Melo wrote: Em Fri, Jan 22, 2016 at 11:28:11AM +0530, Ravi Bangoria escreveu: +return event->header.misc & PERF_RECORD_MISC_CPUMODE_MASK; +} Th

Re: [PATCH v2 1/3] perf kvm: Introduce evsel as argument to perf_event__preprocess_sample

2016-02-02 Thread Ravi Bangoria
HI acme, Thanks for reviewing the patch. On Tuesday 02 February 2016 02:23 AM, Arnaldo Carvalho de Melo wrote: Em Fri, Jan 22, 2016 at 11:28:10AM +0530, Ravi Bangoria escreveu: This patch changes prototype of perf_event__preprocess_sample() with additional argument evsel added at last

Re: [PATCH v2 2/3] perf kvm: enable record|report feature on powerpc

2016-02-02 Thread Ravi Bangoria
HI acme, On Tuesday 02 February 2016 02:36 AM, Arnaldo Carvalho de Melo wrote: Em Fri, Jan 22, 2016 at 11:28:11AM +0530, Ravi Bangoria escreveu: + return event->header.misc & PERF_RECORD_MISC_CPUMODE_MASK; +} This hunk and the next should be on the previous patch, that is n

[RFC 0/4] perf kvm: Guest Symbol Resolution for powerpc

2016-02-24 Thread Ravi Bangoria
and not following the patch version series. Ravi Bangoria (4): perf kvm: Enable 'record' on powerpc perf kvm: Introduce evsel as argument to perf_event__preprocess_sample perf kvm: Enable 'report' on powerpc perf kvm: Fix output fields instead of 'trace' for perf kvm report on powerpc tools

[RFC 2/4] perf kvm: Introduce evsel as argument to perf_event__preprocess_sample

2016-02-24 Thread Ravi Bangoria
This patch changes prototype of perf_event__preprocess_sample() with additional argument evsel added at the end. This change is required because perf_event__preprocess_sample() function will use evsel to determine cpumode of samples for powerpc architecture. Signed-off-by: Ravi Bangoria

[RFC 3/4] perf kvm: Enable 'report' on powerpc

2016-02-24 Thread Ravi Bangoria
of 10 ms. This patch makes use of the 'kvm_guest_exit' tracepoint and checks the exit reason for any kvm exit. If it is HV_DECREMENTER, then the instruction pointer dumped along with this tracepoint is retrieved and mapped with the guest kallsyms. Signed-off-by: Ravi Bangoria <ravi.ba

[RFC 4/4] perf kvm: Fix output fields instead of 'trace' for perf kvm report on powerpc

2016-02-24 Thread Ravi Bangoria
lsyms] [g] ._raw_spin_lock 0.00% :57276 [guest.kernel.kallsyms] [g] ._switch 0.00% :57276 [guest.kernel.kallsyms] [g] .bio_add_page 0.00% :57276 [guest.kernel.kallsyms] [g] .kmem_cache_alloc Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- to

[RFC 1/4] perf kvm: Enable 'record' on powerpc

2016-02-24 Thread Ravi Bangoria
on powerpc. As we are using host event to record guest data, this approach will enable only --guest option of 'perf kvm'. Still --host --guest together won't work. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/arch/powerpc/util/Build | 1 + tools/perf/arch/p

[PATCH v2 1/3] perf kvm: Introduce evsel as argument to perf_event__preprocess_sample

2016-01-21 Thread Ravi Bangoria
This patch changes prototype of perf_event__preprocess_sample() with additional argument evsel added at last. This change is required because perf_event__preprocess_sample() function will use evsel to determine cpumode of samples for powerpc architecture. Signed-off-by: Ravi Bangoria <ravi.ba

[PATCH v2 3/3] perf kvm: Fix output fields instead of 'trace' for perf kvm report on powerpc

2016-01-21 Thread Ravi Bangoria
0% :57276 [guest.kernel.kallsyms] [g] ._raw_spin_lock 0.00% :57276 [guest.kernel.kallsyms] [g] ._switch 0.00% :57276 [guest.kernel.kallsyms] [g] .bio_add_page 0.00% :57276 [guest.kernel.kallsyms] [g] .kmem_cache_alloc Signed-off-by: Ravi Bangoria <ravi.bango...@linux

[PATCH v2 0/3] perf kvm: Guest Symbol Resolution for powerpc

2016-01-21 Thread Ravi Bangoria
] [g] .__srcu_read_unlock 0.00% :9689[guest.kernel.kallsyms] [g] ._raw_spin_lock 0.00% :9689[guest.kernel.kallsyms] [g] .arch_local_irq_restore Ravi Bangoria (3): perf kvm: Introduce evsel as argument to perf_event__preprocess_sample perf kvm: enable record|report

[PATCH v2 2/3] perf kvm: enable record|report feature on powerpc

2016-01-21 Thread Ravi Bangoria
and checks the exit reason for any kvm exit. If it is HV_DECREMENTER, then the instruction pointer dumped along with this tracepoint is retrieved and mapped with the guest kallsyms. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> Signed-off-by: Hemant Kumar <hem...@linux.vne

Re: [PATCH] perf/kvm: Guest Symbol Resolution for powerpc

2016-01-21 Thread Ravi Bangoria
Hi Arnaldo, On Wednesday 13 January 2016 10:29 PM, Arnaldo Carvalho de Melo wrote: Em Tue, Dec 29, 2015 at 03:38:40PM +0530, Ravi Bangoria escreveu: 'perf kvm {record|report}' is used to record and report the profiled performance of any workload on a guest. From the host, we can collect guest

Re: [RFC 4/4] perf kvm: Fix output fields instead of 'trace' for perf kvm report on powerpc

2016-03-08 Thread Ravi Bangoria
Hi Arnaldo, Gentle reminder :) Any updates? Regards, Ravi On Thursday 03 March 2016 06:49 AM, Ravi Bangoria wrote: Thanks acme, On Wednesday 02 March 2016 09:52 PM, Arnaldo Carvalho de Melo wrote: Em Wed, Mar 02, 2016 at 09:16:48PM +0530, Ravi Bangoria escreveu: Thanks Arnaldo, Please

Re: [RFC 4/4] perf kvm: Fix output fields instead of 'trace' for perf kvm report on powerpc

2016-03-02 Thread Ravi Bangoria
Thanks Arnaldo, Please find my comments. On Wednesday 02 March 2016 07:55 PM, Arnaldo Carvalho de Melo wrote: Em Wed, Feb 24, 2016 at 02:37:45PM +0530, Ravi Bangoria escreveu: use_browser = 0; + if (!field_order && + is_perf_data_reorded_on_ppc(session

Re: [RFC 4/4] perf kvm: Fix output fields instead of 'trace' for perf kvm report on powerpc

2016-03-02 Thread Ravi Bangoria
Thanks acme, On Wednesday 02 March 2016 09:52 PM, Arnaldo Carvalho de Melo wrote: Em Wed, Mar 02, 2016 at 09:16:48PM +0530, Ravi Bangoria escreveu: Thanks Arnaldo, Please find my comments. On Wednesday 02 March 2016 07:55 PM, Arnaldo Carvalho de Melo wrote: Em Wed, Feb 24, 2016 at 02:37

[PATCH] hw_breakpoint: Fix Oops at destroying hw_breakpoint event on powerpc

2016-03-02 Thread Ravi Bangoria
task'. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- arch/powerpc/kernel/hw_breakpoint.c | 3 ++- include/linux/perf_event.h | 2 ++ kernel/events/core.c| 2 -- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/arch/powerpc/kernel

Re: [RFC 1/4] perf kvm: Enable 'record' on powerpc

2016-03-28 Thread Ravi Bangoria
, 2016 at 04:12:11PM -0300, Arnaldo Carvalho de Melo escreveu: Em Wed, Feb 24, 2016 at 02:37:42PM +0530, Ravi Bangoria escreveu: 'perf kvm record' is not available on powerpc because 'perf' relies on the 'cycles' event (a PMU event) to profile the guest. However, for powerpc, this can't be used from

Re: [RFC] perf probe: Fix module probe issue if no dwarf support

2016-04-26 Thread Ravi Bangoria
On Tuesday 26 April 2016 02:59 AM, Masami Hiramatsu wrote: On Mon, 25 Apr 2016 16:08:28 +0530 Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote: Perf is not able to register probe in kernel module when dwarf supprt is not there(and so it goes for symtab). Perf passes full path of

Re: [RFC] perf probe: Fix offline module name missmatch issue

2016-04-26 Thread Ravi Bangoria
Thanks Masami for reviewing. Please find my replies to your comment. On Tuesday 26 April 2016 02:54 AM, Masami Hiramatsu wrote: Hi Ravi, On Mon, 25 Apr 2016 16:08:27 +0530 Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote: Perf can add a probe on kernel module which has not been

Re: [RFC] perf probe: Fix offline module name missmatch issue

2016-04-26 Thread Ravi Bangoria
On Tuesday 26 April 2016 02:45 PM, Wangnan (F) wrote: On 2016/4/26 16:56, Ravi Bangoria wrote: Thanks Masami for reviewing. Please find my replies to your comment. On Tuesday 26 April 2016 02:54 AM, Masami Hiramatsu wrote: Hi Ravi, On Mon, 25 Apr 2016 16:08:27 +0530 Ravi Bangoria

Re: [RFC] perf probe: Fix offline module name missmatch issue

2016-04-26 Thread Ravi Bangoria
Thanks Masami, On Tuesday 26 April 2016 07:49 AM, Masami Hiramatsu wrote: On Tue, 26 Apr 2016 06:24:38 +0900 Masami Hiramatsu wrote: +/* + * NOTE: + * '.gnu.linkonce.this_module' section of kernel module elf directly + * maps to 'struct module' from linux/module.h. This

[PATCH 2/2] perf probe: Fix offline module name missmatch issue

2016-04-26 Thread Ravi Bangoria
# # Overhead Command Shared Object Symbol # ... . # 100.00% cat [kobject_example] [k] foo_show Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/probe-event.c | 19 +--

[PATCH 1/2] perf probe: Fix module probe issue if no dwarf support

2016-04-26 Thread Ravi Bangoria
perf.data (2 samples) ] $ sudo ./perf script insmod 13990 [002] 5961.216833: probe:kprobe_init: ... insmod 13995 [002] 5962.889384: probe:kprobe_init: ... Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/probe-event.

Re: [PATCH 1/2] perf probe: Fix module probe issue if no dwarf support

2016-04-26 Thread Ravi Bangoria
On Tuesday 26 April 2016 08:04 PM, Arnaldo Carvalho de Melo wrote: Em Tue, Apr 26, 2016 at 07:55:40PM +0530, Ravi Bangoria escreveu: Perf is not able to register probe in kernel module when dwarf supprt is not there(and so it goes for symtab). Perf passes full path of module where only module

Re: [RFC] perf probe: Fix offline module name missmatch issue

2016-04-26 Thread Ravi Bangoria
On Tuesday 26 April 2016 04:16 PM, Masami Hiramatsu wrote: On Tue, 26 Apr 2016 14:26:48 +0530 Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote: Thanks Masami for reviewing. Please find my replies to your comment. On Tuesday 26 April 2016 02:54 AM, Masami Hiramatsu wrote: H

Re: [RFC 1/4] perf kvm: Enable 'record' on powerpc

2016-04-27 Thread Ravi Bangoria
_COMPAT_UTIL_H */ On Friday 25 March 2016 02:45 AM, Arnaldo Carvalho de Melo wrote: Em Tue, Mar 22, 2016 at 11:19:21PM -0300, Arnaldo Carvalho de Melo escreveu: Em Tue, Mar 22, 2016 at 04:12:11PM -0300, Arnaldo Carvalho de Melo escreveu: Em Wed, Feb 24, 2016 at 02:37:42PM +0530, Ravi Bangoria e

[RFC] perf probe: Fix offline module name missmatch issue

2016-04-25 Thread Ravi Bangoria
# # Overhead Command Shared Object Symbol # ... . # 100.00% cat [kobject_example] [k] foo_show Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/probe-event.

[RFC] perf probe: Fix module probe issue if no dwarf support

2016-04-25 Thread Ravi Bangoria
in kobject_example) You can now use it in all perf tools, such as: perf record -e probe:foo_show -aR sleep 1 $ cat /sys/kernel/debug/tracing/kprobe_events p:probe/foo_show kobject_example:foo_show Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/probe-event.

[RFC v2 1/2] perf probe: Fix offline module name missmatch issue

2016-04-26 Thread Ravi Bangoria
# # Overhead Command Shared Object Symbol # ... . # 100.00% cat [kobject_example] [k] foo_show Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/probe-event.

[RFC v2 2/2] perf probe: Fix module probe issue if no dwarf support

2016-04-26 Thread Ravi Bangoria
in kobject_example) You can now use it in all perf tools, such as: perf record -e probe:foo_show -aR sleep 1 $ cat /sys/kernel/debug/tracing/kprobe_events p:probe/foo_show kobject_example:foo_show Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v2:

Re: [RFC 1/4] perf kvm: Enable 'record' on powerpc

2016-05-09 Thread Ravi Bangoria
Hi Arnaldo, Thanks for the review. Please find my comments below. On Thursday 28 April 2016 03:17 AM, Arnaldo Carvalho de Melo wrote: Em Wed, Apr 27, 2016 at 06:02:21PM +0530, Ravi Bangoria escreveu: Hi Arnaldo, I've worked on your patch. I'm sending this patch(diff) to check

[RFC] perf uprobe: Skip prologue if program compiled without optimization

2016-07-28 Thread Ravi Bangoria
877.879327: probe_test:foo: (400541) i=42 No need to skip prologue for optimized case since debug info is correct for each instructions for -O2 -g. For more details please visit: https://bugzilla.redhat.com/show_bug.cgi?id=612253#c6 Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com>

[PATCH] perf uprobe: Skip prologue if program compiled without optimization

2016-08-01 Thread Ravi Bangoria
877.879327: probe_test:foo: (400541) i=42 No need to skip prologue for optimized case since debug info is correct for each instructions for -O2 -g. For more details please visit: https://bugzilla.redhat.com/show_bug.cgi?id=612253#c6 Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com>

Re: [RFC] perf uprobe: Skip prologue if program compiled without optimization

2016-08-01 Thread Ravi Bangoria
On Saturday 30 July 2016 08:34 AM, Masami Hiramatsu wrote: On Thu, 28 Jul 2016 20:01:51 +0530 Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote: Function prologue prepares stack and registers before executing function logic. When target program is compiled without optimization, fu

[PATCH v2 2/2] perf uprobe: Skip prologue if program compiled without optimization

2016-08-03 Thread Ravi Bangoria
877.879327: probe_test:foo: (400541) i=42 No need to skip prologue for optimized case since debug info is correct for each instructions for -O2 -g. For more details please visit: https://bugzilla.redhat.com/show_bug.cgi?id=612253#c6 Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> -

[PATCH 1/2] perf probe: Helper function to check if probe with variable

2016-08-03 Thread Ravi Bangoria
Introduce helper function instead of inline code and replace hardcoded strings "$vars" and "$params" with their corresponding macros. perf_probe_with_var is not declared as static since it will be called from different file in subsequent patch. Signed-off-by: Ravi

Re: [PATCH] perf uprobe: Skip prologue if program compiled without optimization

2016-08-03 Thread Ravi Bangoria
Thanks Masami, On Tuesday 02 August 2016 08:22 PM, Masami Hiramatsu wrote: On Mon, 1 Aug 2016 14:19:28 +0530 Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote: Function prologue prepares stack and registers before executing function logic. When target program is compiled w

Re: [PATCH 2/2] perf ppc64le: Fix probe location when using DWARF

2016-08-11 Thread Ravi Bangoria
On Thursday 11 August 2016 05:20 PM, Arnaldo Carvalho de Melo wrote: Em Thu, Aug 11, 2016 at 10:01:04AM +0530, Ravi Bangoria escreveu: On Thursday 11 August 2016 05:24 AM, Anton Blanchard wrote: Hi, Powerpc has Global Entry Point and Local Entry Point for functions. LEP catches call from

Re: [PATCH v2 2/2] perf uprobe: Skip prologue if program compiled without optimization

2016-08-13 Thread Ravi Bangoria
Hi Masami, Arnaldo, Any updates on this? Thanks, Ravi On Wednesday 03 August 2016 02:28 PM, Ravi Bangoria wrote: > Function prologue prepares stack and registers before executing function > logic. When target program is compiled without optimization, function > parameter informatio

Re: [PATCH 2/2] perf ppc64le: Fix probe location when using DWARF

2016-08-10 Thread Ravi Bangoria
89c977ae9c3ae35c78b16cddabcf2b01d3cf5cc8 Mon Sep 17 00:00:00 2001 From: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> Date: Wed, 10 Aug 2016 23:13:45 -0500 Subject: [PATCH] perf ppc64le: Fix build failure when no dwarf support Fix perf build failure on ppc64le because of Commit 99e608

Re: [PATCH v3 3/4] perf annotate: add powerpc support

2016-07-13 Thread Ravi Bangoria
On Wednesday 13 July 2016 01:09 PM, Michael Ellerman wrote: Arnaldo Carvalho de Melo <a...@kernel.org> writes: Em Tue, Jul 12, 2016 at 07:51:46AM +0530, Ravi Bangoria escreveu: Hi Arnaldo, On Friday 08 July 2016 02:01 PM, Michael Ellerman wrote: Ravi Bangoria <r

Re: [PATCH v4 0/3] perf annotate: Enable cross arch annotate

2016-07-13 Thread Ravi Bangoria
Arnaldo, Michael, I've tested this patchset on ppc64 BE and LE both. Please review this. -Ravi On Friday 08 July 2016 10:10 AM, Ravi Bangoria wrote: Perf can currently only support code navigation (branches and calls) in annotate when run on the same architecture where perf.data was recorded

Re: [PATCH v3 3/4] perf annotate: add powerpc support

2016-07-11 Thread Ravi Bangoria
Hi Arnaldo, On Friday 08 July 2016 02:01 PM, Michael Ellerman wrote: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> writes: On Wednesday 06 July 2016 03:38 PM, Michael Ellerman wrote: I've sent v4 which enables annotate for bctr' instructions. for 'bctr', it will show down arrow(in

Re: [PATCH v3 3/4] perf annotate: add powerpc support

2016-07-04 Thread Ravi Bangoria
Hi Michael, On Friday 01 July 2016 02:13 PM, Ravi Bangoria wrote: Thanks Michael for your suggestion. On Thursday 30 June 2016 11:51 AM, Michael Ellerman wrote: On Thu, 2016-06-30 at 11:44 +0530, Ravi Bangoria wrote: diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index

[PATCH v4 1/3] perf: Define macro for normalized arch names

2016-07-07 Thread Ravi Bangoria
Define macro for each normalized arch name and use them instead of using arch name as string Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v4: - Moved position of patch tools/perf/arch/common.c | 36 ++-- tool

[PATCH v4 0/3] perf annotate: Enable cross arch annotate

2016-07-07 Thread Ravi Bangoria
tch that define macro for each arch name v3 link: https://lkml.org/lkml/2016/6/30/99 Naveen N. Rao (1): perf annotate: add powerpc support Ravi Bangoria (2): perf: Define macro for normalized arch names perf annotate: Enable cross arch annotate tools/perf/arch/common.c |

Re: [PATCH v3 3/4] perf annotate: add powerpc support

2016-07-07 Thread Ravi Bangoria
Hi Michael, On Wednesday 06 July 2016 03:38 PM, Michael Ellerman wrote: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> writes: On Thursday 30 June 2016 11:51 AM, Michael Ellerman wrote: On Thu, 2016-06-30 at 11:44 +0530, Ravi Bangoria wrote: diff --git a/tools/perf/util/annotate.c b

[PATCH v4 2/3] perf annotate: Enable cross arch annotate

2016-07-07 Thread Ravi Bangoria
annotation work properly, all architecture instruction tables need to be included in the perf binary. And while annotating, look for instruction table where perf.data was recorded. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v4: - __maybe_unused was mis

[PATCH v4 3/3] perf annotate: add powerpc support

2016-07-07 Thread Ravi Bangoria
nstead of creating object every time, first check if list already contain object for that instruction. Signed-off-by: Naveen N. Rao <naveen.n@linux.vnet.ibm.com> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Chnages in v4: - Added support for branch instruct

[PATCH 2/2] perf ppc64le: Fix probe location when using DWARF

2016-08-09 Thread Ravi Bangoria
):string $ sudo ./perf record -a -e probe:do_sys_open ls [ perf record: Woken up 1 times to write data ] [ perf record: Captured and wrote 0.197 MB perf.data (11 samples) ] Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/arch/powerpc/util/sym-handling.

[PATCH 1/2] perf: Add function to post process kernel trace events

2016-08-09 Thread Ravi Bangoria
Instead of inline code, introduce function to post process kernel probe trace events. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/probe-event.c | 29 ++--- 1 file changed, 18 insertions(+), 11 deletions(-) diff --git a/tool

[PATCH v3 1/4] perf: Utility function to fetch arch

2016-06-30 Thread Ravi Bangoria
Add Utility function to fetch arch using evsel. (evsel->env->arch) Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Change in v3: - No changes tools/perf/util/evsel.c | 7 +++ tools/perf/util/evsel.h | 2 ++ 2 files changed, 9 insertions(+) diff --git a/too

[PATCH v3 0/4] perf annotate: Enable cross arch annotate

2016-06-30 Thread Ravi Bangoria
-i perf.data.powerpc --vmlinux vmlinux.powerpc Changes in v3: - Optimized patch that enables annotate on powerpc - Corrected one memory leak v2 link: https://lkml.org/lkml/2016/6/29/278 Naveen N. Rao (1): perf annotate: add powerpc support Ravi Bangoria (4): perf: Utility function to fetch arch p

[PATCH v3 2/4] perf annotate: Enable cross arch annotate

2016-06-30 Thread Ravi Bangoria
instruction defined outside of that also contains arm instructions. Apart from that, 'call__parse()' and 'move__parse()' contains #ifdef __arm__ directive. I've changed it to if (!strcmp(norm_arch, arm)). But I've not tested this as well. Signed-off-by: Ravi Bangoria <ravi.ba

[PATCH v3 3/4] perf annotate: add powerpc support

2016-06-30 Thread Ravi Bangoria
nstead of creating object every time, first check if list already contain object for that instruction. Signed-off-by: Naveen N. Rao <naveen.n@linux.vnet.ibm.com> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v3: - Optimized code - Corrected one m

[PATCH v3 4/4] perf: Define macro for normalized arch names

2016-06-30 Thread Ravi Bangoria
Define macro for each normalized arch name and use them instead of using arch name as string Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v3: - No changes tools/perf/arch/common.c | 36 ++-- tools/perf/arch/co

Re: [PATCH v3 3/4] perf annotate: add powerpc support

2016-07-01 Thread Ravi Bangoria
Thanks Michael for your suggestion. On Thursday 30 June 2016 11:51 AM, Michael Ellerman wrote: On Thu, 2016-06-30 at 11:44 +0530, Ravi Bangoria wrote: diff --git a/tools/perf/util/annotate.c b/tools/perf/util/annotate.c index 36a5825..b87eac7 100644 --- a/tools/perf/util/annotate.c +++ b/tools

Re: [PATCH v3 3/4] perf annotate: add powerpc support

2016-07-01 Thread Ravi Bangoria
Hi Balbir, On Friday 01 July 2016 06:18 PM, Balbir Singh wrote: On Fri, 2016-07-01 at 14:13 +0530, Ravi Bangoria wrote: Thanks Michael for your suggestion. On Thursday 30 June 2016 11:51 AM, Michael Ellerman wrote: On Thu, 2016-06-30 at 11:44 +0530, Ravi Bangoria wrote: diff --git

Re: [PATCH v2 3/4] perf annotate: add powerpc support

2016-06-29 Thread Ravi Bangoria
Thanks Naveen, On Wednesday 29 June 2016 08:15 PM, Naveen N. Rao wrote: On 2016/06/29 04:45PM, Ravi Bangoria wrote: From: Naveen N. Rao <naveen.n@linux.vnet.ibm.com> Powerpc has long list of branch instructions and hardcoding them in table appears to be error-prone. So, add new fu

[PATCH v2 3/4] perf annotate: add powerpc support

2016-06-29 Thread Ravi Bangoria
nstead of creating object every time, first check if list already contain object for that nemonics. Signed-off-by: Naveen N. Rao <naveen.n@linux.vnet.ibm.com> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v2: - Corrected few memory leaks. - Cr

[PATCH v2 2/4] perf annotate: Enable cross arch annotate

2016-06-29 Thread Ravi Bangoria
instruction defined outside of that also contains arm instructions. Apart from that, 'call__parse()' and 'move__parse()' contains #ifdef __arm__ directive. I've changed it to if (!strcmp(norm_arch, "arm")). But I've not tested this as well. Signed-off-by: Ravi Bangoria &

[PATCH v2 0/4] perf annotate: Enable cross arch annotate

2016-06-29 Thread Ravi Bangoria
-i perf.data.powerpc --vmlinux vmlinux.powerpc Changes in v2: - Corrected few memory leaks. - Created Dynamic list for powerpc to optimize memory consumption Naveen N. Rao (1): perf annotate: add powerpc support Ravi Bangoria (3): perf: Utility function to fetch arch perf annotate: Enable cross a

[PATCH v2 4/4] perf annotate: Define macro for arch names

2016-06-29 Thread Ravi Bangoria
Define macro for each arch name and use them instead of using arch name as string. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v2: - No changes tools/perf/arch/common.c | 36 ++-- tools/perf/arch/co

[PATCH v2 1/4] perf: Utility function to fetch arch

2016-06-29 Thread Ravi Bangoria
Add Utility function to fetch arch using evsel. (evsel->env->arch) Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v2: - No changes tools/perf/util/evsel.c | 7 +++ tools/perf/util/evsel.h | 2 ++ 2 files changed, 9 insertions(+) diff --git

[PATCH 3/5] perf/sdt/x86: Move OP parser to tools/perf/arch/x86/

2017-02-02 Thread Ravi Bangoria
SDT marker argument is in N@OP format. N is the size of argument and OP is the actual assembly operand. OP is arch dependent component and hence it's parsing logic also should be placed under tools/perf/arch/. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/per

[PATCH v2] perf/probe: Change MAX_CMDLEN

2017-02-06 Thread Ravi Bangoria
=%gpr8:s32\ arg5=%gpr7:u64 arg6=%gpr6:s32 arg7=%gpr5:u64 arg8=%gpr4:s32\ arg9=+37(%gpr28):u8 Perf probe fails with seg fault for such markers. As uprobe_events file accepts definition upto 4094 characters(4096 - 2 (\n\0)), increase value of MAX_CMDLEN to 4094. Signed-off-by: Ravi Bangoria

Re: [PATCH 3/5] perf/sdt/x86: Move OP parser to tools/perf/arch/x86/

2017-02-06 Thread Ravi Bangoria
Thanks Masami for the review. On Tuesday 07 February 2017 08:41 AM, Masami Hiramatsu wrote: > On Thu, 2 Feb 2017 16:41:41 +0530 > Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote: > >> SDT marker argument is in N@OP format. N is the size of argument and >> OP is

[PATCH 0/5] perf/sdt: Argument support for x86 and powepc

2017-02-02 Thread Ravi Bangoria
beyond current limit MAX_CMDLEN (256) and in such case perf fails with seg fault. I've solve this issue. (patch 5) Note: This patchset is prepared on top of Alexis' v5 series.[1] [1] http://www.mail-archive.com/linux-kernel@vger.kernel.org/msg1292251.html Ravi Bangoria (5): perf/sdt: Show

[PATCH 4/5] perf/sdt/powerpc: Add argument support

2017-02-02 Thread Ravi Bangoria
SDT marker argument is in N@OP format. Here OP is arch dependent component. Add powerpc logic to parse OP and convert it to uprobe compatible format. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/arch/powerpc/util/perf_regs.c

[PATCH 2/5] perf/sdt/x86: Add renaming logic for rNN and other registers

2017-02-02 Thread Ravi Bangoria
'perf probe' is failing for sdt markers whose arguments has rNN (with postfix b/w/d), %rsp, %esp, %sil etc. registers. Add renaming logic for these registers. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/arch/x86/util/perf_regs.

[PATCH 1/5] perf/sdt: Show proper hint

2017-02-02 Thread Ravi Bangoria
it. Suggested-by: Ingo Molnar <mi...@redhat.com> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/lib/api/fs/tracing_path.c | 16 1 file changed, 12 insertions(+), 4 deletions(-) diff --git a/tools/lib/api/fs/tracing_path.c b/tools/lib/api/fs/tr

[PATCH 5/5] perf/probe: Change MAX_CMDLEN

2017-02-02 Thread Ravi Bangoria
=%gpr8:s32\ arg5=%gpr7:u64 arg6=%gpr6:s32 arg7=%gpr5:u64 arg8=%gpr4:s32\ arg9=+37(%gpr28):u8 Perf probe fails with seg fault for such markers. As uprobe_events file accepts definition beyond 256 characters, increase value of MAX_CMDLEN to 512. Signed-off-by: Ravi Bangoria <ravi.ba

[PATCH v2] perf/sdt: Show proper hint

2017-02-03 Thread Ravi Bangoria
Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- Changes in v2: - More precise hint tools/lib/api/fs/tracing_path.c | 31 +-- 1 file changed, 17 insertions(+), 14 deletions(-) diff --git a/tools/lib/api/fs/tracing_path.c b/tools/lib/api/fs/tr

Re: [PATCH v5 0/2] perf probe: add sdt probes arguments into the uprobe cmd string

2017-01-23 Thread Ravi Bangoria
On Wednesday 14 December 2016 01:06 PM, Ingo Molnar wrote: > * Alexis Berlemont wrote: > >> Hi Masami, >> >> Many thanks for your mail. >> >> Here is another patch set which tries to fix the points you mentioned: >> >> * Skip the arguments containing a constant

Re: [PATCH v5 0/2] perf probe: add sdt probes arguments into the uprobe cmd string

2017-01-24 Thread Ravi Bangoria
On Tuesday 24 January 2017 01:52 PM, Ingo Molnar wrote: > * Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote: > >> >> On Wednesday 14 December 2016 01:06 PM, Ingo Molnar wrote: >>> * Alexis Berlemont <alexis.berlem...@gmail.com> wrote: >>>

Re: [PATCH v5 2/2] perf probe: add sdt probes arguments into the uprobe cmd string

2017-01-24 Thread Ravi Bangoria
Hi Alexis, On Wednesday 14 December 2016 05:37 AM, Alexis Berlemont wrote: > An sdt probe can be associated with arguments but they were not passed > to the user probe tracing interface (uprobe_events); this patch adapts > the sdt argument descriptors according to the uprobe input format. > > As

Re: [PATCH v5 0/2] perf probe: add sdt probes arguments into the uprobe cmd string

2017-01-23 Thread Ravi Bangoria
On Wednesday 14 December 2016 01:06 PM, Ingo Molnar wrote: > * Alexis Berlemont wrote: > >> Hi Masami, >> >> Many thanks for your mail. >> >> Here is another patch set which tries to fix the points you mentioned: >> >> * Skip the arguments containing a constant

Re: [RFC] perf/sdt: Directly record SDT event with 'perf record'

2017-02-20 Thread Ravi Bangoria
Thanks Ingo, On Monday 20 February 2017 02:12 PM, Ingo Molnar wrote: > * Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> wrote: > >> What should be the behavior of the tool? Should it record only one >> 'sdt_libpthread:mutex_entry' which exists in uprobe_events? Or

[PATCH v3 2/2] perf/sdt: Directly record SDT events with 'perf record'

2017-02-23 Thread Ravi Bangoria
s file for this session. After finishing the record session, it removes the events from the uprobe_events file using the maintained name list. Signed-off-by: Hemant Kumar <hem...@linux.vnet.ibm.com> Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/lib/api/fs/tr

[PATCH v3 1/2] perf/sdt: Introduce util func is_sdt_event()

2017-02-23 Thread Ravi Bangoria
No Functionality changes. Signed-off-by: Ravi Bangoria <ravi.bango...@linux.vnet.ibm.com> --- tools/perf/util/probe-event.c | 9 + tools/perf/util/util.c| 12 tools/perf/util/util.h| 2 ++ 3 files changed, 15 insertions(+), 8 deletions(-) diff

[PATCH v3 0/2] perf/sdt: Directly record SDT events with 'perf record'

2017-02-23 Thread Ravi Bangoria
0xbcbb@/usr/lib64/libpthread-2.24.so Use 'perf probe -d ' to delete event(s). [1] https://lkml.org/lkml/2017/2/7/59 [2] https://lkml.org/lkml/2016/5/3/810 [3] https://lkml.org/lkml/2016/5/2/689 Hemant Kumar (1): perf/sdt: Directly record SDT events with 'perf record' Ravi Bangoria (1

Re: [PATCH 4/4] perf annotate: Introduce source_code to collect actual code

2017-02-23 Thread Ravi Bangoria
Hi Taeung, On Wednesday 22 February 2017 03:38 PM, Taeung Song wrote: > + INIT_LIST_HEAD(>src->code); > + > + while (!feof(file)) { > + int nr; > + char *c, *parsed_line; > + struct source_code *code; > + > + if (getline(, , file) < 0) { > +

  1   2   3   4   5   6   7   8   9   10   >