Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1621729

[PATCH 13/18] perf tools: Describe pipe mode in perf.data-file-fomat.txt

From Arnaldo Carvalho de Melo <acme@kernel.org>
Newsgroups linux.kernel
Subject [PATCH 13/18] perf tools: Describe pipe mode in perf.data-file-fomat.txt
Date 2017-04-12 03:00 +0200
Message-ID <tveNB-5Wv-45@gated-at.bofh.it> (permalink)
References <tveNA-5Wv-1@gated-at.bofh.it>
Organization linux.* mail to news gateway

Show all headers | View raw


From: David Carrillo-Cisneros <davidcc@google.com>

Add a minimal description of pipe's data format.

Signed-off-by: David Carrillo-Cisneros <davidcc@google.com>
Acked-by: Jiri Olsa <jolsa@kernel.org>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: He Kuang <hekuang@huawei.com>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Paul Turner <pjt@google.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Simon Que <sque@chromium.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Wang Nan <wangnan0@huawei.com>
Link: http://lkml.kernel.org/r/20170410201432.24807-4-davidcc@google.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
 tools/perf/Documentation/perf.data-file-format.txt | 19 +++++++++++++++++--
 1 file changed, 17 insertions(+), 2 deletions(-)

diff --git a/tools/perf/Documentation/perf.data-file-format.txt b/tools/perf/Documentation/perf.data-file-format.txt
index b664b18d3991..fa2a9132f0a9 100644
--- a/tools/perf/Documentation/perf.data-file-format.txt
+++ b/tools/perf/Documentation/perf.data-file-format.txt
@@ -11,8 +11,8 @@ All fields are in native-endian of the machine that generated the perf.data.
 
 When perf is writing to a pipe it uses a special version of the file
 format that does not rely on seeking to adjust data offsets.  This
-format is not described here. The pipe version can be converted to
-normal perf.data with perf inject.
+format is described in "Pipe-mode data" section. The pipe data version can be
+augmented with additional events using perf inject.
 
 The file starts with a perf_header:
 
@@ -411,6 +411,21 @@ An array bound by the perf_file_section size.
 
 ids points to a array of uint64_t defining the ids for event attr attr.
 
+Pipe-mode data
+
+Pipe-mode avoid seeks in the file by removing the perf_file_section and flags
+from the struct perf_header. The trimmed header is:
+
+struct perf_pipe_file_header {
+	u64				magic;
+	u64				size;
+};
+
+The information about attrs, data, and event_types is instead in the
+synthesized events PERF_RECORD_ATTR, PERF_RECORD_HEADER_TRACING_DATA and
+PERF_RECORD_HEADER_EVENT_TYPE that are generated by perf record in pipe-mode.
+
+
 References:
 
 include/uapi/linux/perf_event.h
-- 
2.9.3

Back to linux.kernel | Previous | NextPrevious in thread | Next in thread | Find similar | Unroll thread


Thread

[GIT PULL 00/18] perf/core improvements and fixes Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 09/18] perf annotate s390: Fix perf annotate error -95 (4.10 regression) Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 03/18] perf evsel: Return exact sub event which failed with EPERM for wildcards Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 14/18] perf annotate: Process attr and build_id records Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 16/18] perf tools: Do not print missing features in pipe-mode Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 07/18] perf tools: Refactor the code to strip command name with {l,r}trim() Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 12/18] perf inject: Copy events when reordering events in pipe mode Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 08/18] perf string: Simplify ltrim() implementation Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 01/18] perf callchains: Switch from strtok() to strtok_r() when parsing options Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 17/18] perf annotate: Refactor the code to parse disassemble lines with {l,r}trim() Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 10/18] perf annotate s390: Implement jump types for perf annotate Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 06/18] perf pmu: Refactor wordwrap() with ltrim() Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 13/18] perf tools: Describe pipe mode in perf.data-file-fomat.txt Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 15/18] perf session: Don't rely on evlist in pipe mode Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 18/18] perf annotate: Use stripped line instead of raw disassemble line Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 05/18] perf ui browser: Refactor the code to parse color configs with ltrim() Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  [PATCH 02/18] perf script: Use strtok_r() when parsing output field list Arnaldo Carvalho de Melo <acme@kernel.org> - 2017-04-12 03:00 +0200
  Re: [GIT PULL 00/18] perf/core improvements and fixes Ingo Molnar <mingo@kernel.org> - 2017-04-12 07:40 +0200
    Re: [GIT PULL 00/18] perf/core improvements and fixes Christian Borntraeger <borntraeger@de.ibm.com> - 2017-04-12 09:20 +0200
      Re: [GIT PULL 00/18] perf/core improvements and fixes Ingo Molnar <mingo@kernel.org> - 2017-04-12 09:30 +0200

csiph-web