[<prev] [next>] [day] [month] [year] [list]
Message-ID: <20190301174755.GI13100@kernel.org>
Date: Fri, 1 Mar 2019 14:47:55 -0300
From: Arnaldo Carvalho de Melo <arnaldo.melo@...il.com>
To: Adrian Hunter <adrian.hunter@...el.com>
Cc: Jiri Olsa <jolsa@...hat.com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Linux Kernel Mailing List <linux-kernel@...r.kernel.org>
Subject: Re: [PATCH] perf auxtrace: Improve address filter error message when
there is no DSO
Em Fri, Mar 01, 2019 at 02:29:02PM +0200, Adrian Hunter escreveu:
> The message does not indicate the possibility that the symbol is not
> found because the file does not exist.
>
> Before:
>
> $ perf record -e intel_pt//u --filter 'filter strcmp / strcpy @ foo ' ls
> Symbol 'strcmp' not found.
> Note that symbols must be functions.
> Failed to parse address filter: 'filter strcmp / strcpy @ foo '
> Filter format is: filter|start|stop|tracestop <start symbol or address> [/ <end symbol or size>] [@<file name>]
> Where multiple filters are separated by space or comma.
>
> After:
>
> $ perf record -e intel_pt//u --filter 'filter strcmp / strcpy @ foo ' ls
> File 'foo' not found or has no symbols.
> Symbol 'strcmp' not found.
> Note that symbols must be functions.
> Failed to parse address filter: 'filter strcmp / strcpy @ foo '
> Filter format is: filter|start|stop|tracestop <start symbol or address> [/ <end symbol or size>] [@<file name>]
> Where multiple filters are separated by space or comma.
Thanks, applied.
- Arnaldo
> Reported-by: Alexander Shishkin <alexander.shishkin@...ux.intel.com>
> Signed-off-by: Adrian Hunter <adrian.hunter@...el.com>
> ---
> tools/perf/util/auxtrace.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/auxtrace.c b/tools/perf/util/auxtrace.c
> index 267e54df511b..fb76b6b232d4 100644
> --- a/tools/perf/util/auxtrace.c
> +++ b/tools/perf/util/auxtrace.c
> @@ -1918,7 +1918,8 @@ static struct dso *load_dso(const char *name)
> if (!map)
> return NULL;
>
> - map__load(map);
> + if (map__load(map) < 0)
> + pr_err("File '%s' not found or has no symbols.\n", name);
>
> dso = dso__get(map->dso);
>
> --
> 2.17.1
--
- Arnaldo
Powered by blists - more mailing lists