Messages in this thread | | | Date | Fri, 29 Apr 2016 09:13:33 +0900 | From | Masami Hiramatsu <> | 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@kernel.org> wrote:
> On Thu, Apr 28, 2016 at 03:38:49AM +0900, Masami Hiramatsu wrote: > > From: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.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@hitachi.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@kernel.org>
| |