perf jevents: Append PMU description later
authorIan Rogers <irogers@google.com>
Wed, 11 May 2022 21:15:20 +0000 (14:15 -0700)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Mon, 23 May 2022 13:07:41 +0000 (10:07 -0300)
Append the PMU information from "Unit" to the description later. This
avoids a problem when "Unit" appears early in a json event and the
information prepends the description rather than being the expected
suffix.

Update the pmu-events test so that expectations now match the improved
output.

Reviewed-by: John Garry <john.garry@huawei.com>
Signed-off-by: Ian Rogers <irogers@google.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Ananth Narayan <ananth.narayan@amd.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Andrew Kilroy <andrew.kilroy@arm.com>
Cc: Caleb Biggers <caleb.biggers@intel.com>
Cc: Felix Fietkau <nbd@nbd.name>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: James Clark <james.clark@arm.com>
Cc: Jiri Olsa <jolsa@kernel.org>
Cc: Kajol Jain <kjain@linux.ibm.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Kshipra Bopardikar <kshipra.bopardikar@intel.com>
Cc: Like Xu <likexu@tencent.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Mathieu Poirier <mathieu.poirier@linaro.org>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Nick Forrington <nick.forrington@arm.com>
Cc: Paul Clarke <pc@us.ibm.com>
Cc: Perry Taylor <perry.taylor@intel.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Qi Liu <liuqi115@huawei.com>
Cc: Ravi Bangoria <ravi.bangoria@amd.com>
Cc: Sandipan Das <sandipan.das@amd.com>
Cc: Santosh Shukla <santosh.shukla@amd.com>
Cc: Stephane Eranian <eranian@google.com>
Cc: Will Deacon <will@kernel.org>
Cc: Xing Zhengjun <zhengjun.xing@linux.intel.com>
Link: https://lore.kernel.org/r/20220511211526.1021908-2-irogers@google.com
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/pmu-events/jevents.c
tools/perf/tests/pmu-events.c

index 159d9ea..e1f7c7a 100644 (file)
@@ -652,9 +652,6 @@ static int json_events(const char *fn,
                                        for (s = je.pmu; *s; s++)
                                                *s = tolower(*s);
                                }
-                               addfield(map, &je.desc, ". ", "Unit: ", NULL);
-                               addfield(map, &je.desc, "", je.pmu, NULL);
-                               addfield(map, &je.desc, "", " ", NULL);
                        } else if (json_streq(map, field, "Filter")) {
                                addfield(map, &filter, "", "", val);
                        } else if (json_streq(map, field, "ScaleUnit")) {
@@ -697,6 +694,11 @@ static int json_events(const char *fn,
                        addfield(map, &je.desc, " ", extra_desc, NULL);
                if (je.long_desc && extra_desc)
                        addfield(map, &je.long_desc, " ", extra_desc, NULL);
+               if (je.pmu) {
+                       addfield(map, &je.desc, ". ", "Unit: ", NULL);
+                       addfield(map, &je.desc, "", je.pmu, NULL);
+                       addfield(map, &je.desc, "", " ", NULL);
+               }
                if (filter)
                        addfield(map, &event, ",", filter, NULL);
                if (msr != NULL)
index 299a215..b74c6ef 100644 (file)
@@ -133,7 +133,7 @@ static const struct perf_pmu_test_event unc_cbo_xsnp_response_miss_eviction = {
        .event = {
                .name = "unc_cbo_xsnp_response.miss_eviction",
                .event = "umask=0x81,event=0x22",
-               .desc = "Unit: uncore_cbox A cross-core snoop resulted from L3 Eviction which misses in some processor core",
+               .desc = "A cross-core snoop resulted from L3 Eviction which misses in some processor core. Unit: uncore_cbox ",
                .topic = "uncore",
                .long_desc = "A cross-core snoop resulted from L3 Eviction which misses in some processor core",
                .pmu = "uncore_cbox",
@@ -147,7 +147,7 @@ static const struct perf_pmu_test_event uncore_hyphen = {
        .event = {
                .name = "event-hyphen",
                .event = "umask=0x00,event=0xe0",
-               .desc = "Unit: uncore_cbox UNC_CBO_HYPHEN",
+               .desc = "UNC_CBO_HYPHEN. Unit: uncore_cbox ",
                .topic = "uncore",
                .long_desc = "UNC_CBO_HYPHEN",
                .pmu = "uncore_cbox",
@@ -161,7 +161,7 @@ static const struct perf_pmu_test_event uncore_two_hyph = {
        .event = {
                .name = "event-two-hyph",
                .event = "umask=0x00,event=0xc0",
-               .desc = "Unit: uncore_cbox UNC_CBO_TWO_HYPH",
+               .desc = "UNC_CBO_TWO_HYPH. Unit: uncore_cbox ",
                .topic = "uncore",
                .long_desc = "UNC_CBO_TWO_HYPH",
                .pmu = "uncore_cbox",