Commit c0dd9455 authored by Ian Rogers's avatar Ian Rogers Committed by Arnaldo Carvalho de Melo
Browse files

perf pmu-events: Don't lower case MetricExpr



This patch changes MetricExpr to be written out in the same case. This
enables events in metrics to use modifiers like 'G' which currently
yield parse errors when made lower case. To keep tests passing the
literal #smt_on is compared in a non-case sensitive way - #SMT_on is
present in at least SkylakeX metrics.

Signed-off-by: default avatarIan Rogers <irogers@google.com>
Cc: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Cc: Andi Kleen <ak@linux.intel.com>
Cc: Jiri Olsa <jolsa@redhat.com>
Cc: John Garry <john.garry@huawei.com>
Cc: Kajol Jain <kjain@linux.ibm.com>
Cc: Kan Liang <kan.liang@linux.intel.com>
Cc: Mark Rutland <mark.rutland@arm.com>
Cc: Namhyung Kim <namhyung@kernel.org>
Cc: Paul Clarke <pc@us.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Stephane Eranian <eranian@google.com>
Link: http://lore.kernel.org/lkml/20211126071305.3733878-1-irogers@google.com


Signed-off-by: default avatarArnaldo Carvalho de Melo <acme@redhat.com>
parent f56ef30a
Loading
Loading
Loading
Loading
+0 −2
Original line number Diff line number Diff line
@@ -672,8 +672,6 @@ static int json_events(const char *fn,
				addfield(map, &je.metric_constraint, "", "", val);
			} else if (json_streq(map, field, "MetricExpr")) {
				addfield(map, &je.metric_expr, "", "", val);
				for (s = je.metric_expr; *s; s++)
					*s = tolower(*s);
			} else if (json_streq(map, field, "ArchStdEvent")) {
				addfield(map, &arch_std, "", "", val);
				for (s = arch_std; *s; s++)
+1 −1
Original line number Diff line number Diff line
@@ -407,7 +407,7 @@ double expr__get_literal(const char *literal)
	static struct cpu_topology *topology;
	double result = NAN;

	if (!strcmp("#smt_on", literal)) {
	if (!strcasecmp("#smt_on", literal)) {
		result = smt_on() > 0 ? 1.0 : 0.0;
		goto out;
	}