[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20190308143926.GB19877@kernel.org>
Date: Fri, 8 Mar 2019 11:39:26 -0300
From: Arnaldo Carvalho de Melo <arnaldo.melo@...il.com>
To: Adrian Hunter <adrian.hunter@...el.com>,
Masami Hiramatsu <mhiramat@...nel.org>
Cc: Joseph Qi <joseph.qi@...ux.alibaba.com>,
Arnaldo Carvalho de Melo <arnaldo.melo@...il.com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Greg KH <gregkh@...uxfoundation.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
luto@...nel.org, Jiufei Xue <jiufei.xue@...ux.alibaba.com>,
Xu Yu <xuyu@...ux.alibaba.com>, peterz@...radead.org,
mingo@...hat.com
Subject: Re: [PATCH] perf probe: Fix getting the kernel map
Em Mon, Mar 04, 2019 at 03:13:21PM +0200, Adrian Hunter escreveu:
> Since commit 4d99e4136580 ("perf machine: Workaround missing maps for x86
> PTI entry trampolines"), perf tools has been creating more than one kernel
> map, however 'perf probe' assumed there could be only one.
>
> Fix by using machine__kernel_map() to get the main kernel map.
Masami, can I get your Acked-by?
- Arnaldo
> Signed-off-by: Adrian Hunter <adrian.hunter@...el.com>
> Fixes: 4d99e4136580 ("perf machine: Workaround missing maps for x86 PTI entry trampolines")
> Fixes: d83212d5dd67 ("kallsyms, x86: Export addresses of PTI entry trampolines")
> Tested-by: Joseph Qi <joseph.qi@...ux.alibaba.com>
> Cc: stable@...r.kernel.org
> ---
> tools/perf/util/probe-event.c | 6 ++++--
> 1 file changed, 4 insertions(+), 2 deletions(-)
>
> diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
> index e86f8be89157..6cd96f9b346d 100644
> --- a/tools/perf/util/probe-event.c
> +++ b/tools/perf/util/probe-event.c
> @@ -157,8 +157,10 @@ static struct map *kernel_get_module_map(const char *module)
> if (module && strchr(module, '/'))
> return dso__new_map(module);
>
> - if (!module)
> - module = "kernel";
> + if (!module) {
> + pos = machine__kernel_map(host_machine);
> + return map__get(pos);
> + }
>
> for (pos = maps__first(maps); pos; pos = map__next(pos)) {
> /* short_name is "[module]" */
> --
> 2.19.1
--
- Arnaldo
Powered by blists - more mailing lists