Re: [PATCH 1/9] perf stat: Fix crash with --per-node --metric-only in CSV mode

From: Arnaldo Carvalho de Melo
Date: Tue Nov 08 2022 - 15:50:47 EST


Em Mon, Nov 07, 2022 at 01:33:06PM -0800, Namhyung Kim escreveu:
> The following command will get segfault due to missing aggr_header_csv
> for AGGR_NODE:
>
> $ sudo perf stat -a --per-node -x, --metric-only true

Thanks, applied to perf/urgent.

- Arnaldo

> Fixes: 86895b480a2f ("perf stat: Add --per-node agregation support")
> Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxxx>
> ---
> tools/perf/util/stat-display.c | 4 +++-
> 1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/stat-display.c b/tools/perf/util/stat-display.c
> index 657434cd29ee..ea41e6308c50 100644
> --- a/tools/perf/util/stat-display.c
> +++ b/tools/perf/util/stat-display.c
> @@ -534,7 +534,7 @@ static void printout(struct perf_stat_config *config, struct aggr_cpu_id id, int
> [AGGR_CORE] = 2,
> [AGGR_THREAD] = 1,
> [AGGR_UNSET] = 0,
> - [AGGR_NODE] = 0,
> + [AGGR_NODE] = 1,
> };
>
> pm = config->metric_only ? print_metric_only_csv : print_metric_csv;
> @@ -819,6 +819,7 @@ static int aggr_header_lens[] = {
> [AGGR_SOCKET] = 12,
> [AGGR_NONE] = 6,
> [AGGR_THREAD] = 24,
> + [AGGR_NODE] = 6,
> [AGGR_GLOBAL] = 0,
> };
>
> @@ -828,6 +829,7 @@ static const char *aggr_header_csv[] = {
> [AGGR_SOCKET] = "socket,cpus",
> [AGGR_NONE] = "cpu,",
> [AGGR_THREAD] = "comm-pid,",
> + [AGGR_NODE] = "node,",
> [AGGR_GLOBAL] = ""
> };
>
> --
> 2.38.1.431.g37b22c650d-goog

--

- Arnaldo