Re: [PATCH v4 1/6] perf mem: Fix size tracking for mem_lvl's in perf_script__meminfo_scnprintf()
From: Ian Rogers
Date: Mon Aug 17 2026 - 17:25:41 EST
On Tue, Aug 11, 2026 at 10:33 AM Thomas Falcon <thomas.falcon@xxxxxxxxx> wrote:
>
> When printing memory info in perf script, the entire size of the
> buffer is passed to perf_mem__lvl_scnprintf() instead of the remaining
> size. Pass the remaining buffer size instead.
>
> This issue was detected by sashiko during an internal code review.
>
> Assisted-by: Sashiko:gemini-3.1-pro-preview
> Fixes: fdefc3750e847 ("perf mem: Print memory operation type")
> Signed-off-by: Thomas Falcon <thomas.falcon@xxxxxxxxx>
> Reviewed-by: Dapeng Mi <dapeng1.mi@xxxxxxxxxxxxxxx>
Reviewed-by: Ian Rogers <irogers@xxxxxxxxxx>
Thanks,
Ian
> ---
> tools/perf/util/mem-events.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/mem-events.c b/tools/perf/util/mem-events.c
> index 0b49fce251fc..4e490f9cd348 100644
> --- a/tools/perf/util/mem-events.c
> +++ b/tools/perf/util/mem-events.c
> @@ -610,7 +610,7 @@ int perf_script__meminfo_scnprintf(char *out, size_t sz, const struct mem_info *
> i += scnprintf(out, sz, "|OP ");
> i += perf_mem__op_scnprintf(out + i, sz - i, mem_info);
> i += scnprintf(out + i, sz - i, "|LVL ");
> - i += perf_mem__lvl_scnprintf(out + i, sz, mem_info);
> + i += perf_mem__lvl_scnprintf(out + i, sz - i, mem_info);
> i += scnprintf(out + i, sz - i, "|SNP ");
> i += perf_mem__snp_scnprintf(out + i, sz - i, mem_info);
> i += scnprintf(out + i, sz - i, "|TLB ");
> --
> 2.55.0
>