perf record: No need to process the synthesized MMAP events twice
authorArnaldo Carvalho de Melo <acme@redhat.com>
Thu, 14 Nov 2019 15:15:34 +0000 (12:15 -0300)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 18 Nov 2019 14:21:32 +0000 (11:21 -0300)
commit6e0a9b3dfaaf93476b34825e53c4ec065267081e
tree9db156c56c10fbeaa2716e3d2c1be3dd7271e651
parentf068435d9bb2d825d59e3c101bc579f09315ee01
perf record: No need to process the synthesized MMAP events twice

At the end of a 'perf record' session, by default, we'll process all
samples and populate the threads, maps, etc so as to find out which of
the DSOs got samples, to reduce the size of the build-id table we'll
add to the perf.data headers.

But we don't need to process the PERF_RECORD_MMAP events synthesized
for the kernel modules, as we have those already via
perf_session__create_kernel_maps(), so add mmap/mmap2 handlers that
first look at event->header.misc to see if the event is for a user map,
bailing out if not.

Cc: Adrian Hunter <adrian.hunter@intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Link: https://lkml.kernel.org/n/tip-mofoxvcx2dryppcw3o689jdd@git.kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/builtin-record.c