perf stat: Add missing newline in pr_err messages
authorYang Jihong <yangjihong1@huawei.com>
Wed, 14 Jun 2023 02:15:05 +0000 (02:15 +0000)
committerNamhyung Kim <namhyung@kernel.org>
Tue, 20 Jun 2023 22:55:13 +0000 (15:55 -0700)
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@huawei.com>
Acked-by: Ian Rogers <irogers@google.com>
Reviewed-by: James Clark <james.clark@arm.com>
Link: https://lore.kernel.org/r/20230614021505.59856-1-yangjihong1@huawei.com
Signed-off-by: Namhyung Kim <namhyung@kernel.org>
tools/perf/builtin-stat.c

index a3c04fb265f798db0fc227e6992ae7f09d4e77d1..07b48f6df48eb2b803aa565dec5d2bdf34391012 100644 (file)
@@ -1596,7 +1596,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);
@@ -1912,7 +1912,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);
@@ -2052,7 +2052,7 @@ static int add_default_attributes(void)
                 * on an architecture test for such a metric name.
                 */
                if (!metricgroup__has_metric(pmu, "transaction")) {
-                       pr_err("Missing transaction metrics");
+                       pr_err("Missing transaction metrics\n");
                        return -1;
                }
                return metricgroup__parse_groups(evsel_list, pmu, "transaction",
@@ -2068,7 +2068,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;
                }
 
@@ -2081,7 +2081,7 @@ static int add_default_attributes(void)
                }
 
                if (!metricgroup__has_metric(pmu, "smi")) {
-                       pr_err("Missing smi metrics");
+                       pr_err("Missing smi metrics\n");
                        return -1;
                }
 
@@ -2106,7 +2106,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) {