Re: [PATCH v2] perf stat: Add missing newline in pr_err messages

From: James Clark
Date: Mon Jun 12 2023 - 04:32:44 EST




On 10/06/2023 10:44, Yang Jihong wrote:
> The newline is missing for error messages in add_default_attributes()
>
> Before:
>
> # perf stat --topdown
> Topdown requested but the topdown metric groups aren't present.
> (See perf list the metric groups have names like TopdownL1)#
>
> After:
>
> # perf stat --topdown
> Topdown requested but the topdown metric groups aren't present.
> (See perf list the metric groups have names like TopdownL1)
> #
>
> In addition, perf_stat_init_aggr_mode() and perf_stat_init_aggr_mode_file()
> have the same problem, fixed by the way.
>
> Signed-off-by: Yang Jihong <yangjihong1@xxxxxxxxxx>

Reviewed-by: James Clark <james.clark@xxxxxxx>

> ---
>
> Changes since v1:
> - Correct commit title to `pr_err`
>
> tools/perf/builtin-stat.c | 12 ++++++------
> 1 file changed, 6 insertions(+), 6 deletions(-)
>
> diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c
> index b9ad32f21e57..78644ae538c4 100644
> --- a/tools/perf/builtin-stat.c
> +++ b/tools/perf/builtin-stat.c
> @@ -1398,7 +1398,7 @@ static int perf_stat_init_aggr_mode(void)
> stat_config.aggr_map = cpu_aggr_map__new(evsel_list->core.user_requested_cpus,
> get_id, /*data=*/NULL, needs_sort);
> if (!stat_config.aggr_map) {
> - pr_err("cannot build %s map", aggr_mode__string[stat_config.aggr_mode]);
> + pr_err("cannot build %s map\n", aggr_mode__string[stat_config.aggr_mode]);
> return -1;
> }
> stat_config.aggr_get_id = aggr_mode__get_id(stat_config.aggr_mode);
> @@ -1650,7 +1650,7 @@ static int perf_stat_init_aggr_mode_file(struct perf_stat *st)
> stat_config.aggr_map = cpu_aggr_map__new(evsel_list->core.user_requested_cpus,
> get_id, env, needs_sort);
> if (!stat_config.aggr_map) {
> - pr_err("cannot build %s map", aggr_mode__string[stat_config.aggr_mode]);
> + pr_err("cannot build %s map\n", aggr_mode__string[stat_config.aggr_mode]);
> return -1;
> }
> stat_config.aggr_get_id = aggr_mode__get_id_file(stat_config.aggr_mode);
> @@ -1789,7 +1789,7 @@ static int add_default_attributes(void)
> * on an architecture test for such a metric name.
> */
> if (!metricgroup__has_metric("transaction")) {
> - pr_err("Missing transaction metrics");
> + pr_err("Missing transaction metrics\n");
> return -1;
> }
> return metricgroup__parse_groups(evsel_list, "transaction",
> @@ -1805,7 +1805,7 @@ static int add_default_attributes(void)
> int smi;
>
> if (sysfs__read_int(FREEZE_ON_SMI_PATH, &smi) < 0) {
> - pr_err("freeze_on_smi is not supported.");
> + pr_err("freeze_on_smi is not supported.\n");
> return -1;
> }
>
> @@ -1818,7 +1818,7 @@ static int add_default_attributes(void)
> }
>
> if (!metricgroup__has_metric("smi")) {
> - pr_err("Missing smi metrics");
> + pr_err("Missing smi metrics\n");
> return -1;
> }
>
> @@ -1843,7 +1843,7 @@ static int add_default_attributes(void)
>
> if (!max_level) {
> pr_err("Topdown requested but the topdown metric groups aren't present.\n"
> - "(See perf list the metric groups have names like TopdownL1)");
> + "(See perf list the metric groups have names like TopdownL1)\n");
> return -1;
> }
> if (stat_config.topdown_level > max_level) {