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. v8 changes: - Bug fixes. - Code cleanups. - Rebase. v7 changes: - Rebased on top of the latest master. - Introduced new metadata strings section. - Use 8 bytes for section size. 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) (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 strings section in trace file version 7 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 strings sections on file load 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 record: Add new parameter for trace file version include/trace-cmd/trace-cmd.h | 5 + .../include/private/trace-cmd-private.h | 29 +- lib/trace-cmd/include/trace-cmd-local.h | 17 +- lib/trace-cmd/trace-input.c | 836 ++++++++++++++---- lib/trace-cmd/trace-msg.c | 127 ++- lib/trace-cmd/trace-output.c | 691 ++++++++++++--- lib/trace-cmd/trace-util.c | 12 +- tracecmd/trace-listen.c | 3 + tracecmd/trace-read.c | 18 +- tracecmd/trace-record.c | 30 +- tracecmd/trace-usage.c | 2 +- 11 files changed, 1463 insertions(+), 307 deletions(-) -- 2.34.1