[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-Id: <20160429091333.b8a6377e8a74ebdc7a1daa44@kernel.org>
Date: Fri, 29 Apr 2016 09:13:33 +0900
From: Masami Hiramatsu <mhiramat@...nel.org>
To: Namhyung Kim <namhyung@...nel.org>
Cc: Arnaldo Carvalho de Melo <acme@...nel.org>,
<linux-kernel@...r.kernel.org>,
Peter Zijlstra <peterz@...radead.org>,
Ingo Molnar <mingo@...hat.com>,
Hemant Kumar <hemant@...ux.vnet.ibm.com>,
Ananth N Mavinakayanahalli <ananth@...ux.vnet.ibm.com>
Subject: Re: [PATCH perf/core v5 11/15] perf probe: Accept %sdt and %cached
event name
On Thu, 28 Apr 2016 14:26:05 +0900
Namhyung Kim <namhyung@...nel.org> wrote:
> On Thu, Apr 28, 2016 at 03:38:49AM +0900, Masami Hiramatsu wrote:
> > From: Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>
> >
> > To improbe usability, support %[PROVIDER:]SDTEVENT format to
> > add new probes on SDT and cached events.
> >
> > e.g.
> > ----
> > # perf probe -x /lib/libc-2.17.so %lll_lock_wait_private
> > Added new event:
> > sdt_libc:lll_lock_wait_private (on %lll_lock_wait_private in
> > /usr/lib/libc-2.17.so)
> >
> > You can now use it in all perf tools, such as:
> >
> > perf record -e sdt_libc:lll_lock_wait_private -aR sleep 1
> >
> > # perf probe -l | more
> > sdt_libc:lll_lock_wait_private (on __lll_lock_wait_private+21
> > in /usr/lib/libc-2.17.so)
> > ----
> >
> > Note that this is not only for SDT events, but also normal
> > events with event-name.
> >
> > e.g. define "myevent" on cache (-n doesn't add the real probe)
> > ----
> > # perf probe -x ./perf --cache -n --add 'myevent=dso__load $params'
> > ----
> > Reuse the "myevent" from cache as below.
> > ----
> > # perf probe -x ./perf %myevent
> > ----
> >
> > TODO:
> > Wildcard is not supported yet.
> >
> > Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@...achi.com>
> > ---
> > tools/perf/Documentation/perf-probe.txt | 3 +
> > tools/perf/util/probe-event.c | 78 ++++++++++++++++++++++---------
> > tools/perf/util/probe-event.h | 1
> > tools/perf/util/probe-file.c | 9 ++++
> > 4 files changed, 69 insertions(+), 22 deletions(-)
> >
> > diff --git a/tools/perf/Documentation/perf-probe.txt b/tools/perf/Documentation/perf-probe.txt
> > index 7a258e9..43523be 100644
> > --- a/tools/perf/Documentation/perf-probe.txt
> > +++ b/tools/perf/Documentation/perf-probe.txt
> > @@ -151,6 +151,8 @@ Probe points are defined by following syntax.
> > 3) Define event based on source file with lazy pattern
> > [[GROUP:]EVENT=]SRC;PTN [ARG ...]
> >
> > + 4) Pre-defined SDT events
> > + %[PROVIDER:]SDTEVENT
>
> How about changing it to:
>
> 4) Pre-defined (SDT) or cached events
> %EVENTNAME
>
> ?
Agreed, because cached events can be used for that too.
I think %[GROUP:]EVENT is more accurate.
> Btw, is it possible to use group name here?
Yes :)
> The SDT will use
> sdt_<libname> for group name and <provider>_<event> for event name,
> right?
No, the provider name is used for the group name as "sdt_<provider>".
> So is it for cached events and does it support defining group
> name when added like below?
>
> # perf probe -x ./perf --cache --add 'mygroup:myevent=main'
Yes, it is done by 9/15 ("perf probe: Add group name support") :)
Thank you,
--
Masami Hiramatsu <mhiramat@...nel.org>
Powered by blists - more mailing lists