Re: [PATCH] perf probe: Ignore vmlinux build-id when offline vmlinux and dry-run used

From: Masami Hiramatsu
Date: Wed Jan 25 2017 - 21:38:11 EST


On Tue, 24 Jan 2017 16:41:28 -0500
Josh Hunt <johunt@xxxxxxxxxx> wrote:

> Commit e50243bb ("perf probe: Ignore vmlinux Build-id when offline vmlinux given")
> added the ability to ignore vmlinux when an offline vmlinux is passed and no
> l, d, or a flag is also passed. This extends that to ignore build-id when
> -n/--dry-run is used. This way we can gather probe information for offline kernels
> using the method Brendan Gregg mentions in this post:
> http://www.brendangregg.com/blog/2014-09-11/perf-kernel-line-tracing.html .

Sorry, NAK.
Could you use -D (--definition) for that usage? It directly gives you
the definition on stdout, and also ignore the buildid.

Thank you,

>
> Ex:
> $ ./perf probe -k ./vmlinux-3.14.59 -nv 'do_sys_open=do_sys_open:7 filename:string dfd flags op'
>
> will generate:
> do_sys_open+91 filename_string=+0(%si):string dfd=%di:s32 flags=%bx:s32 op=-60(%bp):u64
>
> and then copy/paste this to the machine running the 3.14.59 kernel.
>
> Signed-off-by: Josh Hunt <johunt@xxxxxxxxxx>
> ---
> tools/perf/builtin-probe.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/builtin-probe.c b/tools/perf/builtin-probe.c
> index f87996b..e0eea723 100644
> --- a/tools/perf/builtin-probe.c
> +++ b/tools/perf/builtin-probe.c
> @@ -616,7 +616,7 @@ static int perf_del_probe_events(struct strfilter *filter)
> * nor change running kernel. So if user gives offline vmlinux,
> * ignore its buildid.
> */
> - if (!strchr("lda", params.command) && symbol_conf.vmlinux_name)
> + if ((!strchr("lda", params.command) || probe_event_dry_run) && symbol_conf.vmlinux_name)
> symbol_conf.ignore_vmlinux_buildid = true;
>
> switch (params.command) {
> --
> 1.9.1
>


--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>