Messages in this thread | | | Subject | Re: [PATCH 12/19] perf metric: Add events for the current list | From | kajoljain <> | Date | Sun, 26 Jul 2020 14:49:16 +0530 |
| |
On 7/20/20 4:04 AM, Ian Rogers wrote: > 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> >
Reviewed-By : Kajol Jain<kjain@linux.ibm.com>
Thanks, Kajol Jain > 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 >>
| |