Re: [PATCH 12/19] perf metric: Add events for the current list

Arnaldo Carvalho de Melo
2020-07-28T12:33:51Z

Em Sun, Jul 19, 2020 at 03:34:48PM -0700, Ian Rogers escreveu:
> On Sun, Jul 19, 2020 at 11:14 AM Jiri Olsa <jolsa@kernel.org> wrote:
> >
> > There's no need to iterate the whole list of groups,
> > when adding new events. The currently created groups
> > are the ones we want to add.
> >
> > Signed-off-by: Jiri Olsa <jolsa@kernel.org>
>
> Acked-by: Ian Rogers <irogers@google.com>

Thanks, applied.

- Arnaldo

> Thanks,
> Ian
>
> > ---
> > tools/perf/util/metricgroup.c | 9 ++++++---
> > 1 file changed, 6 insertions(+), 3 deletions(-)
> >
> > diff --git a/tools/perf/util/metricgroup.c b/tools/perf/util/metricgroup.c
> > index bb5757b9419d..332414d93f7a 100644
> > --- a/tools/perf/util/metricgroup.c
> > +++ b/tools/perf/util/metricgroup.c
> > @@ -813,6 +813,7 @@ static int metricgroup__add_metric(const char *metric, bool metric_no_group,
> > {
> > struct pmu_event *pe;
> > struct egroup *eg;
> > + LIST_HEAD(list);
> > int i, ret;
> > bool has_match = false;
> >
> > @@ -820,7 +821,7 @@ static int metricgroup__add_metric(const char *metric, bool metric_no_group,
> > has_match = true;
> > eg = NULL;
> >
> > - ret = add_metric(group_list, pe, metric_no_group, &eg);
> > + ret = add_metric(&list, pe, metric_no_group, &eg);
> > if (ret)
> > return ret;
> >
> > @@ -829,7 +830,7 @@ static int metricgroup__add_metric(const char *metric, bool metric_no_group,
> > * included in the expression.
> > */
> > ret = resolve_metric(eg, metric_no_group,
> > - group_list, map);
> > + &list, map);
> > if (ret)
> > return ret;
> > }
> > @@ -838,7 +839,7 @@ static int metricgroup__add_metric(const char *metric, bool metric_no_group,
> > if (!has_match)
> > return -EINVAL;
> >
> > - list_for_each_entry(eg, group_list, nd) {
> > + list_for_each_entry(eg, &list, nd) {
> > if (events->len > 0)
> > strbuf_addf(events, ",");
> >
> > @@ -850,6 +851,8 @@ static int metricgroup__add_metric(const char *metric, bool metric_no_group,
> > &eg->pctx);
> > }
> > }
> > +
> > + list_splice(&list, group_list);
> > return 0;
> > }
> >
> > --
> > 2.25.4
> >

--

- Arnaldo