Factor out body of event handling loop for fork case reusing process_timeout() function.
Signed-off-by: Alexey Budankov <alexey.budan...@linux.intel.com> --- tools/perf/builtin-stat.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index 62bad2df13ba..3bc538576607 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c @@ -798,13 +798,9 @@ static int __run_perf_stat(int argc, const char **argv, int run_idx) enable_counters(); if (interval || timeout) { - while (!waitpid(child_pid, &status, WNOHANG)) { + while (!stop && !waitpid(child_pid, &status, WNOHANG)) { nanosleep(&ts, NULL); - if (timeout) - break; - process_interval(); - if (interval_count && !(--times)) - break; + stop = process_timeout(timeout, interval, ×); } } if (child_pid != -1) { -- 2.24.1