Messages in this thread | | | Date | Wed, 12 Jan 2022 14:53:42 -0300 | From | Arnaldo Carvalho de Melo <> | Subject | Re: [RFC PATCH] perf pmu-events: Don't lower case MetricExpr |
| |
Em Wed, Jan 12, 2022 at 02:45:07PM -0300, Arnaldo Carvalho de Melo escreveu: > Em Wed, Jan 12, 2022 at 09:22:51AM -0800, Ian Rogers escreveu: > > On Thu, Nov 25, 2021 at 11:13 PM Ian Rogers <irogers@google.com> wrote: > > > > > > 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. > > > > Ping. > > I tried applying 20211124001231.3277836-1-irogers@google.com on top of > your perf_cpu series, it failed, will check. > > BTW, I got the two other patches in that series: > > ⬢[acme@toolbox perf]$ git log --oneline -2 > 6dd8646939a770e4 (HEAD -> perf/core) perf tools: Probe non-deprecated sysfs path 1st > 0ce05781f4905fcf perf tools: Fix SMT fallback with large core counts > ⬢[acme@toolbox perf]$
Ok, I have that one now on, but could Andi or somebody else that works more frequently with that code provide an Acked-by or Reviewed-by?
- Arnaldo
> - Arnaldo > > > Thanks, > > Ian > > > > > This patch is on top of: > > > https://lore.kernel.org/lkml/20211124001231.3277836-1-irogers@google.com/ > > > > > > Signed-off-by: Ian Rogers <irogers@google.com> > > > --- > > > tools/perf/pmu-events/jevents.c | 2 -- > > > tools/perf/util/expr.c | 2 +- > > > 2 files changed, 1 insertion(+), 3 deletions(-) > > > > > > diff --git a/tools/perf/pmu-events/jevents.c b/tools/perf/pmu-events/jevents.c > > > index 2e7c4153875b..1a57c3f81dd4 100644 > > > --- a/tools/perf/pmu-events/jevents.c > > > +++ b/tools/perf/pmu-events/jevents.c > > > @@ -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++) > > > diff --git a/tools/perf/util/expr.c b/tools/perf/util/expr.c > > > index cdbab4f959fe..5cd6b9ff2489 100644 > > > --- a/tools/perf/util/expr.c > > > +++ b/tools/perf/util/expr.c > > > @@ -397,7 +397,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; > > > } > > > -- > > > 2.34.0.rc2.393.gf8c9666880-goog > > > > > -- > > - Arnaldo
--
- Arnaldo
| |