Re: [PATCH] perf: Document recent additions to the perf.data file header
From: Ian Rogers
Date: Mon Jun 15 2026 - 15:21:35 EST
On Fri, Jun 12, 2026 at 12:28 PM Thomas Falcon <thomas.falcon@xxxxxxxxx> wrote:
>
> Add documentation for recently added HEADER_E_MACHINE and
> HEADER_CLN_SIZE data to the perf.data file. Also fix a typo
> at the end of the header section.
>
> Signed-off-by: Thomas Falcon <thomas.falcon@xxxxxxxxx>
> ---
> .../perf/Documentation/perf.data-file-format.txt | 16 +++++++++++++++-
> 1 file changed, 15 insertions(+), 1 deletion(-)
>
> diff --git a/tools/perf/Documentation/perf.data-file-format.txt b/tools/perf/Documentation/perf.data-file-format.txt
> index 0e4d0ecc9e12..b90cba9168f8 100644
> --- a/tools/perf/Documentation/perf.data-file-format.txt
> +++ b/tools/perf/Documentation/perf.data-file-format.txt
> @@ -464,7 +464,21 @@ struct cpu_domain_info {
> struct domain_info domains[];
> };
>
> - other bits are reserved and should ignored for now
> + HEADER_E_MACHINE = 33,
> +
> +ELF machine and flags data. e_machine is expanded from 16 to 32 bits
> +for alignment. Format:
> +
> + u32 e_machine;
> + u32 e_flags;
Thanks Thomas! I found that endianness was missing from the
e_machine/e_flags for capstone disassembly support. Part of me thinks
the unused 16-bits of the e_machine could carry information like this.
That said, we also have endianness information via the perf.data magic
value. Anyway:
Reviewed-by: Ian Rogers <irogers@xxxxxxxxxx>
Ian
> +
> + HEADER_CLN_SIZE = 34,
> +
> +The size of the cacheline in bytes. Format:
> +
> + unsigned int cln_size;
> +
> + other bits are reserved and should be ignored for now
> HEADER_FEAT_BITS = 256,
>
> Attributes
> --
> 2.43.0
>