diff options
Diffstat (limited to 'tools/perf/builtin-stat.c')
-rw-r--r-- | tools/perf/builtin-stat.c | 28 |
1 files changed, 1 insertions, 27 deletions
diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index d1028d7755bb..a635abfa77b6 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c | |||
@@ -383,32 +383,6 @@ static bool perf_evsel__should_store_id(struct perf_evsel *counter) | |||
383 | return STAT_RECORD || counter->attr.read_format & PERF_FORMAT_ID; | 383 | return STAT_RECORD || counter->attr.read_format & PERF_FORMAT_ID; |
384 | } | 384 | } |
385 | 385 | ||
386 | static struct perf_evsel *perf_evsel__reset_weak_group(struct perf_evsel *evsel) | ||
387 | { | ||
388 | struct perf_evsel *c2, *leader; | ||
389 | bool is_open = true; | ||
390 | |||
391 | leader = evsel->leader; | ||
392 | pr_debug("Weak group for %s/%d failed\n", | ||
393 | leader->name, leader->nr_members); | ||
394 | |||
395 | /* | ||
396 | * for_each_group_member doesn't work here because it doesn't | ||
397 | * include the first entry. | ||
398 | */ | ||
399 | evlist__for_each_entry(evsel_list, c2) { | ||
400 | if (c2 == evsel) | ||
401 | is_open = false; | ||
402 | if (c2->leader == leader) { | ||
403 | if (is_open) | ||
404 | perf_evsel__close(c2); | ||
405 | c2->leader = c2; | ||
406 | c2->nr_members = 0; | ||
407 | } | ||
408 | } | ||
409 | return leader; | ||
410 | } | ||
411 | |||
412 | static bool is_target_alive(struct target *_target, | 386 | static bool is_target_alive(struct target *_target, |
413 | struct thread_map *threads) | 387 | struct thread_map *threads) |
414 | { | 388 | { |
@@ -477,7 +451,7 @@ try_again: | |||
477 | if ((errno == EINVAL || errno == EBADF) && | 451 | if ((errno == EINVAL || errno == EBADF) && |
478 | counter->leader != counter && | 452 | counter->leader != counter && |
479 | counter->weak_group) { | 453 | counter->weak_group) { |
480 | counter = perf_evsel__reset_weak_group(counter); | 454 | counter = perf_evlist__reset_weak_group(evsel_list, counter); |
481 | goto try_again; | 455 | goto try_again; |
482 | } | 456 | } |
483 | 457 | ||