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

kajoljain
2020-07-26T09:19:30Z

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
>>