On Fri, 8 Mar 2019 11:39:26 -0300
Arnaldo Carvalho de Melo <[email protected]> wrote:
> 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?
Yes, this looks good to me :)
Acked-by: Masami Hiramatsu <[email protected]>
Thank you Adrian!
>
> - Arnaldo
>
> > Signed-off-by: Adrian Hunter <[email protected]>
> > 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 <[email protected]>
> > Cc: [email protected]
> > ---
> > 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
--
Masami Hiramatsu <[email protected]>