lkml.org 
[lkml]   [2017]   [Sep]   [20]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v1 2/6] perf Documentation: Update perf.data-file-format.txt
    Date
    Currently the perf.data file starts with a perf_file_header,
    while in the document, it's perf_header. So update it by the
    new definition.

    It also adds the description for new fields first_sample_time
    and last_sample_time. The new fields will be used in perf
    record/script/... to slice the traces.

    Signed-off-by: Jin Yao <yao.jin@linux.intel.com>
    ---
    tools/perf/Documentation/perf.data-file-format.txt | 27 +++++++++++++---------
    1 file changed, 16 insertions(+), 11 deletions(-)

    diff --git a/tools/perf/Documentation/perf.data-file-format.txt b/tools/perf/Documentation/perf.data-file-format.txt
    index e90c59c..7c27403 100644
    --- a/tools/perf/Documentation/perf.data-file-format.txt
    +++ b/tools/perf/Documentation/perf.data-file-format.txt
    @@ -14,17 +14,18 @@ format that does not rely on seeking to adjust data offsets. This
    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:
    -
    -struct perf_header {
    - char magic[8]; /* PERFILE2 */
    - uint64_t size; /* size of the header */
    - uint64_t attr_size; /* size of an attribute in attrs */
    - struct perf_file_section attrs;
    - struct perf_file_section data;
    - struct perf_file_section event_types;
    - uint64_t flags;
    - uint64_t flags1[3];
    +The file starts with a perf_file_header:
    +
    +struct perf_file_header {
    + u64 magic;
    + u64 size;
    + u64 attr_size;
    + struct perf_file_section attrs;
    + struct perf_file_section data;
    + struct perf_file_section event_types;
    + DECLARE_BITMAP(adds_features, HEADER_FEAT_BITS);
    + u64 first_sample_time;
    + u64 last_sample_time;
    };

    The magic number identifies the perf file and the version. Current perf versions
    @@ -416,6 +417,10 @@ An array bound by the perf_file_section size.

    ids points to a array of uint64_t defining the ids for event attr attr.

    +first_sample_time and last_sample_time record the timestmaps of first sample
    +and last sample. In later, perf record will fetch the time from perf file
    +header and use them to slice the traces for parallelization.
    +
    Pipe-mode data

    Pipe-mode avoid seeks in the file by removing the perf_file_section and flags
    --
    2.7.4
    \
     
     \ /
      Last update: 2017-09-20 09:16    [W:2.667 / U:0.428 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site