diff options
author | Jiri Olsa <jolsa@kernel.org> | 2014-07-25 16:56:15 +0200 |
---|---|---|
committer | Arnaldo Carvalho de Melo <acme@redhat.com> | 2014-07-25 12:13:05 -0300 |
commit | 33bf7481971a622a2b8c8aaa0e5e61a6eaeecd71 (patch) | |
tree | b07d2a35ec5fc974cc6b13d8ea14b7772a10f32f | |
parent | a7a2b8b4ce9e0bfd085c5797d535487594a71882 (diff) | |
download | linux-33bf7481971a622a2b8c8aaa0e5e61a6eaeecd71.tar.bz2 |
perf record: Always force PERF_RECORD_FINISHED_ROUND event
The PERF_RECORD_FINISHED_ROUND synthetic record governs queue flushing
in reporting, so it needs to be stored for any kind of event.
The lack of such periodic flushing made the tools use more memory than
needed, as the reordering was being done only after processing all
events. This was the case when no tracepoints were in the mix.
Forcing the PERF_RECORD_FINISHED_ROUND event to be stored for all event
types.
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Acked-by: Adrian Hunter <adrian.hunter@intel.com>
Acked-by: David Ahern <dsahern@gmail.com>
Cc: Corey Ashford <cjashfor@linux.vnet.ibm.com>
Cc: David Ahern <dsahern@gmail.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Ingo Molnar <mingo@kernel.org>
Cc: Jean Pihet <jean.pihet@linaro.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/1406300177-31805-18-git-send-email-jolsa@kernel.org
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
-rw-r--r-- | tools/perf/builtin-record.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/tools/perf/builtin-record.c b/tools/perf/builtin-record.c index 378b85b731a7..4a1a54265b04 100644 --- a/tools/perf/builtin-record.c +++ b/tools/perf/builtin-record.c @@ -250,8 +250,7 @@ static int record__mmap_read_all(struct record *rec) } } - if (perf_header__has_feat(&rec->session->header, HEADER_TRACING_DATA)) - rc = record__write(rec, &finished_round_event, sizeof(finished_round_event)); + rc = record__write(rec, &finished_round_event, sizeof(finished_round_event)); out: return rc; |