lkml.org 
[lkml]   [2020]   [Apr]   [28]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] perf stat: Fix uncore event mixed metric with workload error issue
On Mon, Apr 27, 2020 at 10:41:16PM +0800, Jin Yao wrote:

SNIP

> index 9207b6c45475..b01ee06b1965 100644
> --- a/tools/perf/builtin-stat.c
> +++ b/tools/perf/builtin-stat.c
> @@ -1841,8 +1841,8 @@ static void setup_system_wide(int forks)
> * conditions is met:
> *
> * - there's no workload specified
> - * - there is workload specified but all requested
> - * events are system wide events
> + * - there is workload specified but at least one requested
> + * event is system wide event
> */
> if (!target__none(&target))
> return;
> @@ -1851,13 +1851,16 @@ static void setup_system_wide(int forks)
> target.system_wide = true;
> else {
> struct evsel *counter;
> + bool system_wide = false;
>
> evlist__for_each_entry(evsel_list, counter) {
> - if (!counter->core.system_wide)
> - return;
> + if (counter->core.system_wide) {
> + system_wide = true;
> + break;
> + }

I wonder this would break some expectations.. would it be
more safe to detect duration event and bypass it from the
decission? but maybe the case I'm worried about is not a
problem at all.. Andi?

jirka

> }
>
> - if (evsel_list->core.nr_entries)
> + if (evsel_list->core.nr_entries && system_wide)
> target.system_wide = true;
> }
> }
> --
> 2.17.1
>

\
 
 \ /
  Last update: 2020-04-28 12:53    [W:0.218 / U:1.080 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site