From: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
To: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Hemant Kumar <hemant@linux.vnet.ibm.com>,
Namhyung Kim <namhyung@kernel.org>,
linux-kernel@vger.kernel.org, srikar@linux.vnet.ibm.com,
peterz@infradead.org, oleg@redhat.com,
hegdevasant@linux.vnet.ibm.com, mingo@redhat.com,
systemtap@sourceware.org, aravinda@linux.vnet.ibm.com,
penberg@iki.fi, brendan.d.gregg@gmail.com,
"yrl.pp-manager.tt@hitachi.com" <yrl.pp-manager.tt@hitachi.com>
Subject: Re: [RFC] perf-cache command interface design
Date: Thu, 13 Nov 2014 00:25:57 +0900 [thread overview]
Message-ID: <54637C05.5090807@hitachi.com> (raw)
In-Reply-To: <20141111131030.GG4468@redhat.com>
(2014/11/11 22:10), Arnaldo Carvalho de Melo wrote:
> Em Tue, Nov 11, 2014 at 03:53:42PM +0900, Masami Hiramatsu escreveu:
>> (2014/11/10 21:23), Arnaldo Carvalho de Melo wrote:
>>> Em Mon, Nov 10, 2014 at 07:59:24PM +0900, Masami Hiramatsu escreveu:
>>>> Here is the second try for the probe-cache. This version simplifies
>>>> the synopsis, and unifies the SDT and probe caches.
>>>> Please give me your comments/ideas!
>>>>
>>>> Command-line Synopsis
>>>> =====================
>
>>>> Add elf(or symbols) and probe-caches of SDT if exists in <FILES>
>>>> perf cache --add <FILES> [--probe <SPEC>] # for user programs
>
>>> Why the --probe above? Shouldn't this be just (if you are talking about
>>> ELF files only):
>
>>> perf cache --add <FILES>
>
>> Yes, for the elf and sdt cache, we don't need --probe.
>> Note that "[]" means optional. If we would like to add some probe cache,
>> we need a spec of probe definition.
>
> I understand that, its just that it looked superfluous at that specific
> place, where you are explaining how to add ELF files.
>
>>>> perf cache --kcore <FILE> [--probe <SPEC>] # for kcore ?
>
>>> Adrian, aren't kcore files easily identifiable as such and thus could be
>>> added as:
>
>>> perf cache --add <FILES>
>
>>>> perf cache --probe <SPEC> # for the current kernel
>
>>> Why do we need a --probe here? Don't they always start with a character
>>> that is seldomly used in ELF file names and thus we could get away with
>>> not requiring --probe?
>
>> This is only for adding the probe cache (not elf, nor sdt), which requires
>> a probe definition. Moreover, I'd like to unify the specification of the
>> probe definition with perf-probe. In that case, --probe is more natural.
>
> What I meant was, what is wrong with replacing:
>
> perf cache --probe <SPEC> # for the current kernel
>
> With:
>
> perf cache --add <PROBE-SPEC> # for the current kernel
>
> And have it figure out that what is being added is a probe and do the
> right thing?
As I've said previously, PROBE-SPEC can be same as FILES (imagine that a binary
file which has same name function in the kernel.)
Moreover, PROBE-SPEC requires the target binary(or kernel module) except for
kernel probes. In that case, anyway we need -x or -m options with file-path
for --add, that is very strange.
e.g.
For me,
perf cache --add ./binary --probe '*'
looks more natural than
perf cache --add '*' -exec ./binary
since in other cases(sdt/elf), we'll just do
perf cache --add ./binary
:-/
>>>> Remove caches related to <FILES> or <BUILDIDS>
>>>> perf cache --remove <FILES>|<BUILDIDS>
>>>>
>>>> Show all probe caches(including SDT) or buildids
>>>> perf cache --list [probe|buildid]
>>>>
>>>> Delete existing probe-cache entries for kernel, <PATH> or/and <BUILDID>.
>>>> perf cache --probe-del [<GROUP>:]<EVENT>[@<PATH>][#<BUILDID>]
>>>
>>> Ditto, i.e. can't we just use:
>>>
>>> perf cache --remove [<GROUP>:]<EVENT>[@<PATH>][#<BUILDID>]
>>>
>>> And it figure out that this is a probe that is being removed?
>>
>> In most cases, it may be OK, but it is also possible to cause unexpected
>> result when mis-typing. I think if <FILE> is always starting at '/', it
>> is easy to identify.
>
> We can keep the explicit switch (--probe-del) perhaps to resolve
> ambiguities, if they happen, but make it so that it is not strictly
> required for the common case.
OK, it'll take a longer time to remove, since we need to load all caches
to find matching entries of probe caches, but is feasible.
Thank you!
--
Masami HIRAMATSU
Software Platform Research Dept. Linux Technology Research Center
Hitachi, Ltd., Yokohama Research Laboratory
E-mail: masami.hiramatsu.pt@hitachi.com
next prev parent reply other threads:[~2014-11-12 15:26 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-11-02 10:53 [PATCH v4 0/5] perf/sdt: SDT events listing/probing Hemant Kumar
2014-11-02 10:54 ` [PATCH v4 1/5] perf/sdt: ELF support for SDT Hemant Kumar
2014-11-02 10:54 ` [PATCH v4 2/5] perf/sdt: Add SDT events into a cache Hemant Kumar
2014-11-02 10:55 ` [PATCH v4 3/5] perf/sdt: Show SDT cache contents Hemant Kumar
2014-11-02 10:55 ` [PATCH v4 4/5] perf/sdt: Delete SDT events from cache Hemant Kumar
2014-11-02 10:56 ` [PATCH v4 5/5] perf/sdt: Add support to perf record to trace SDT events Hemant Kumar
2014-11-04 7:38 ` Namhyung Kim
2014-11-04 8:06 ` Hemant Kumar
2014-11-04 12:56 ` Masami Hiramatsu
[not found] ` <5459BD3E.7010804@linux.vnet.ibm.com>
2014-11-05 6:50 ` Hemant Kumar
2014-11-05 9:07 ` Masami Hiramatsu
2014-11-05 13:28 ` Arnaldo Carvalho de Melo
2014-11-05 7:06 ` Namhyung Kim
2014-11-05 9:05 ` Masami Hiramatsu
2014-11-06 2:15 ` Josh Stone
2014-11-06 5:33 ` Masami Hiramatsu
2014-11-06 7:06 ` Hemant Kumar
2014-11-06 14:56 ` Masami Hiramatsu
2014-11-07 8:21 ` [RFC] perf-cache command interface design Masami Hiramatsu
2014-11-07 8:42 ` Peter Zijlstra
2014-11-07 13:57 ` [PATCH RESEND 1/2] perf tools: Move disable_buildid_cache() to util/build-id.c Namhyung Kim
2014-11-07 13:57 ` [PATCH 2/2] perf tools: Add record.use-buildid-cache config option Namhyung Kim
2014-11-20 7:36 ` [tip:perf/core] perf build-id: Move disable_buildid_cache() to util/build-id.c tip-bot for Namhyung Kim
2014-11-07 15:16 ` [RFC] perf-cache command interface design David Ahern
2014-11-07 15:33 ` Arnaldo Carvalho de Melo
2014-11-07 10:51 ` Hemant Kumar
2014-11-08 4:15 ` Masami Hiramatsu
2014-11-07 14:38 ` Arnaldo Carvalho de Melo
2014-11-08 4:26 ` Masami Hiramatsu
2014-11-07 14:43 ` Namhyung Kim
2014-11-08 4:38 ` Masami Hiramatsu
2014-11-10 10:59 ` Masami Hiramatsu
2014-11-10 12:23 ` Arnaldo Carvalho de Melo
2014-11-11 6:53 ` Masami Hiramatsu
2014-11-11 13:10 ` Arnaldo Carvalho de Melo
2014-11-12 15:25 ` Masami Hiramatsu [this message]
2014-11-17 3:08 ` Namhyung Kim
2014-11-17 3:17 ` Masami Hiramatsu
2014-11-17 22:09 ` Masami Hiramatsu
2014-11-18 4:51 ` Namhyung Kim
2014-11-18 11:16 ` Masami Hiramatsu
2014-11-18 4:41 ` Namhyung Kim
2014-11-18 10:32 ` Masami Hiramatsu
2014-11-17 18:58 ` Arnaldo Carvalho de Melo
2014-11-18 4:45 ` Namhyung Kim
2014-11-10 12:05 ` Hagen Paul Pfeifer
2014-11-10 12:31 ` Arnaldo Carvalho de Melo
2014-11-10 12:50 ` Peter Zijlstra
2014-11-10 13:37 ` Hagen Paul Pfeifer
2014-11-05 18:23 ` [PATCH v4 5/5] perf/sdt: Add support to perf record to trace SDT events Hemant Kumar
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=54637C05.5090807@hitachi.com \
--to=masami.hiramatsu.pt@hitachi.com \
--cc=acme@redhat.com \
--cc=aravinda@linux.vnet.ibm.com \
--cc=brendan.d.gregg@gmail.com \
--cc=hegdevasant@linux.vnet.ibm.com \
--cc=hemant@linux.vnet.ibm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=oleg@redhat.com \
--cc=penberg@iki.fi \
--cc=peterz@infradead.org \
--cc=srikar@linux.vnet.ibm.com \
--cc=systemtap@sourceware.org \
--cc=yrl.pp-manager.tt@hitachi.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.