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 v2 00/21] trace-cmd fixes and clean-ups", should be applied on top of it: https://lore.kernel.org/linux-trace-devel/20210913122759.3672494-1-tz.stoyanov@xxxxxxxxx/ v2 changes: - code cleanups Tzvetomir Stoyanov (VMware) (25): 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 record: Append trace options after the trace data are written 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: Do not write CPUs with empty trace data 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: Call additional APIs when creating trace file 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 | 14 +- lib/trace-cmd/trace-input.c | 766 ++++++++++++++---- lib/trace-cmd/trace-msg.c | 127 ++- lib/trace-cmd/trace-output.c | 597 +++++++++++--- lib/trace-cmd/trace-util.c | 2 +- tracecmd/trace-listen.c | 6 + tracecmd/trace-read.c | 18 +- tracecmd/trace-record.c | 36 +- tracecmd/trace-restore.c | 3 +- tracecmd/trace-split.c | 3 + tracecmd/trace-usage.c | 2 +- 13 files changed, 1300 insertions(+), 306 deletions(-) -- 2.31.1