linux-trace-devel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: "Tzvetomir Stoyanov (VMware)" <tz.stoyanov@gmail.com>
To: rostedt@goodmis.org
Cc: linux-trace-devel@vger.kernel.org
Subject: [PATCH v6 00/23] Trace file version 7 - sections
Date: Thu,  2 Dec 2021 14:21:29 +0200	[thread overview]
Message-ID: <20211202122152.43275-1-tz.stoyanov@gmail.com> (raw)

Introduce the next version of the trace-cmd trace file - 7. Major changes
since version 6 is more flexible extendable structure of the file, based on
independent sections.
Known issues:
 - Only trace-cmd record and report subcommands work with trace file v7.

This patch-set depends on:
 "[PATCH 0/5] Cleanups of tracecmd_output_ APIs"
  https://lore.kernel.org/linux-trace-devel/20211202121949.43084-1-tz.stoyanov@gmail.com/

v6 changes:
 - Rebased on top of the latest master.
 - On trace file v7 close, write any unsaved options in the file - as
   a last section.
 - Removed the patch "Do not write CPUs with empty trace data" from the
   patch set. Empty CPUs are written in v7 trace files, the same way as in
   v6.
v5 changes:
 - Rebased on top of the latest master.
v4 changes:
 - Rebased on top of the latest master.
v3 changes:
 - Fixed issues of split and convert commands with some corner cases.
v2 changes:
 - Code cleanups.

Tzvetomir Stoyanov (VMware) (23):
  trace-cmd library: Define trace file version 7
  trace-cmd library: Add cache functionality to network message handler
  trace-cmd library: New APIs to get and set version of output handler
  trace-cmd library: Add internal helper function for writing headers
    before file sections
  trace-cmd library: Write header before file sections
  trace-cmd library: Add multiple options sections in trace file version
    7
  trace-cmd library: Do not write CPU count section in trace files
    version 7
  trace-cmd library: Move CPU flyrecord trace metadata into the buffer
    option, for trace file version 7
  trace-cmd library: Add section header before flyrecord trace data
  trace-cmd library: Fit CPU latency trace data in the new trace file
    version 7 format
  trace-cmd library: Add macro to check file state on reading
  trace-cmd library: Introduce sections in trace file reading logic
  trace-cmd library: Initialize internal sections database on file read
  trace-cmd library: Use sections database when reading parts of the
    trace file
  trace-cmd library: Read headers from trace file version 7
  trace-cmd library: Read extended BUFFER option
  trace-cmd library: Handle the extended DONE option
  trace-cmd library: Initialize CPU data for reading from version 7
    trace files
  trace-cmd library: Handle latency trace in version 7 files
  trace-cmd library: Handle buffer trace data init for version 7 files
  trace-cmd report: Use the new latency API to read data
  trace-cmd: Write buffers metadata in  trace files version 6
  trace-cmd report: Add new parameter for trace file version

 include/trace-cmd/trace-cmd.h                 |   5 +
 .../include/private/trace-cmd-private.h       |  27 +-
 lib/trace-cmd/include/trace-cmd-local.h       |  16 +-
 lib/trace-cmd/trace-input.c                   | 768 ++++++++++++++----
 lib/trace-cmd/trace-msg.c                     | 127 ++-
 lib/trace-cmd/trace-output.c                  | 600 +++++++++++---
 lib/trace-cmd/trace-util.c                    |  12 +-
 tracecmd/trace-listen.c                       |   3 +
 tracecmd/trace-read.c                         |  18 +-
 tracecmd/trace-record.c                       |  31 +-
 tracecmd/trace-usage.c                        |   2 +-
 11 files changed, 1301 insertions(+), 308 deletions(-)

-- 
2.33.1


             reply	other threads:[~2021-12-02 12:22 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-12-02 12:21 Tzvetomir Stoyanov (VMware) [this message]
2021-12-02 12:21 ` [PATCH v6 01/23] trace-cmd library: Define trace file version 7 Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 02/23] trace-cmd library: Add cache functionality to network message handler Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 03/23] trace-cmd library: New APIs to get and set version of output handler Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 04/23] trace-cmd library: Add internal helper function for writing headers before file sections Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 05/23] trace-cmd library: Write header " Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 06/23] trace-cmd library: Add multiple options sections in trace file version 7 Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 07/23] trace-cmd library: Do not write CPU count section in trace files " Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 08/23] trace-cmd library: Move CPU flyrecord trace metadata into the buffer option, for trace file " Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 09/23] trace-cmd library: Add section header before flyrecord trace data Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 10/23] trace-cmd library: Fit CPU latency trace data in the new trace file version 7 format Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 11/23] trace-cmd library: Add macro to check file state on reading Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 12/23] trace-cmd library: Introduce sections in trace file reading logic Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 13/23] trace-cmd library: Initialize internal sections database on file read Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 14/23] trace-cmd library: Use sections database when reading parts of the trace file Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 15/23] trace-cmd library: Read headers from trace file version 7 Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 16/23] trace-cmd library: Read extended BUFFER option Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 17/23] trace-cmd library: Handle the extended DONE option Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 18/23] trace-cmd library: Initialize CPU data for reading from version 7 trace files Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 19/23] trace-cmd library: Handle latency trace in version 7 files Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 20/23] trace-cmd library: Handle buffer trace data init for " Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 21/23] trace-cmd report: Use the new latency API to read data Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 22/23] trace-cmd: Write buffers metadata in trace files version 6 Tzvetomir Stoyanov (VMware)
2021-12-02 12:21 ` [PATCH v6 23/23] trace-cmd report: Add new parameter for trace file version Tzvetomir Stoyanov (VMware)

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20211202122152.43275-1-tz.stoyanov@gmail.com \
    --to=tz.stoyanov@gmail.com \
    --cc=linux-trace-devel@vger.kernel.org \
    --cc=rostedt@goodmis.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).