Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752737AbcD2ANj (ORCPT ); Thu, 28 Apr 2016 20:13:39 -0400 Received: from mail.kernel.org ([198.145.29.136]:40178 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752394AbcD2ANi (ORCPT ); Thu, 28 Apr 2016 20:13:38 -0400 Date: Fri, 29 Apr 2016 09:13:33 +0900 From: Masami Hiramatsu To: Namhyung Kim Cc: Arnaldo Carvalho de Melo , , Peter Zijlstra , Ingo Molnar , Hemant Kumar , Ananth N Mavinakayanahalli Subject: Re: [PATCH perf/core v5 11/15] perf probe: Accept %sdt and %cached event name Message-Id: <20160429091333.b8a6377e8a74ebdc7a1daa44@kernel.org> In-Reply-To: <20160428052605.GA16129@sejong.aot.lge.com> References: <20160427183701.23446.15293.stgit@devbox> <20160427183849.23446.64132.stgit@devbox> <20160428052605.GA16129@sejong.aot.lge.com> X-Mailer: Sylpheed 3.4.3 (GTK+ 2.24.28; x86_64-redhat-linux-gnu) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2821 Lines: 92 On Thu, 28 Apr 2016 14:26:05 +0900 Namhyung Kim wrote: > On Thu, Apr 28, 2016 at 03:38:49AM +0900, Masami Hiramatsu wrote: > > From: Masami Hiramatsu > > > > 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 > > --- > > 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_ for group name and _ for event name, > right? No, the provider name is used for the group name as "sdt_". > 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