Hello, On Wed, Apr 11, 2018 at 06:07:52PM -0500, Kim Phillips wrote: > perf test 1 is failing on an arm64 box (that has a kernel module > loaded fwiw). Running bisect resulted in commit 1d12cec6ce99 "perf > machine: Fix paranoid check in machine__set_kernel_mmap()" being the > first bad commit. Reverting it fixes symbol resolution: > > # ./perf.bad record true; ./perf.bad --no-pager report --stdio --quiet > [ perf record: Woken up 1 times to write data ] > [ perf record: Captured and wrote 0.001 MB perf.data (10 samples) ] > 64.34% true [unknown] [k] 0xffff20000809ffb8 > 32.12% true [unknown] [k] 0xffff20000869f400 > 3.24% true [unknown] [k] 0xffff20000868d924 > 0.28% perf.ba [unknown] [k] 0xffff200008598b34 > 0.03% perf.ba [unknown] [k] 0xffff200008598a94 > > # ./perf.good record true; ./perf.good --no-pager report --stdio --quiet > [ perf record: Woken up 1 times to write data ] > [ perf record: Captured and wrote 0.001 MB perf.data (9 samples) ] > 91.71% true [kernel.kallsyms] [k] restore_nameidata > 7.60% true [kernel.kallsyms] [k] perf_iterate_ctx.constprop.38 > 0.69% perf.go [kernel.kallsyms] [k] perf_event_exec > > Cc: Arnaldo Carvalho de Melo <a...@kernel.org> > Cc: Namhyung Kim <namhy...@kernel.org> > Cc: Jiri Olsa <jo...@kernel.org> > Cc: Ingo Molnar <mi...@kernel.org> > Cc: David Ahern <dsah...@gmail.com> > Cc: Alexander Shishkin <alexander.shish...@linux.intel.com> > Cc: Peter Zijlstra <a.p.zijls...@chello.nl> > Cc: <kernel-t...@lge.com> > Fixes: 1d12cec6ce99 ("perf machine: Fix paranoid check in > machine__set_kernel_mmap()") > Signed-off-by: Kim Phillips <kim.phill...@arm.com> > --- > It's not clear to me what the specific intent of the original commit > was, thus the revert.
Hmm.. maybe your kernel map has non-zero start and zero end. I thought it was just from an old or invalid data. But now I think that overflow can create it.. could you please show me the mmap event? $ perf script --show-mmap-events Thanks, Namhyung > > tools/perf/util/machine.c | 2 +- > 1 file changed, 1 insertion(+), 1 deletion(-) > > diff --git a/tools/perf/util/machine.c b/tools/perf/util/machine.c > index 2eca8478e24f..089399139778 100644 > --- a/tools/perf/util/machine.c > +++ b/tools/perf/util/machine.c > @@ -1224,7 +1224,7 @@ static void machine__set_kernel_mmap(struct machine > *machine, > * Be a bit paranoid here, some perf.data file came with > * a zero sized synthesized MMAP event for the kernel. > */ > - if (start == 0 && end == 0) > + if (machine->vmlinux_maps[i]->end == 0) > machine->vmlinux_maps[i]->end = ~0ULL; > } > } > -- > 2.17.0 >