Factor out body of event handling loop for fork case reusing handle_interval() function.
Signed-off-by: Alexey Budankov <[email protected]> --- tools/perf/builtin-stat.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/tools/perf/builtin-stat.c b/tools/perf/builtin-stat.c index 3baf00482666..3e11f854ffc8 100644 --- a/tools/perf/builtin-stat.c +++ b/tools/perf/builtin-stat.c @@ -791,13 +791,11 @@ 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 = handle_interval(interval, ×); } } if (child_pid != -1) { -- 2.24.1

