perf: Do not POLLHUP event if it has children
authorJiri Olsa <jolsa@kernel.org>
Fri, 12 Sep 2014 11:18:26 +0000 (13:18 +0200)
committerIngo Molnar <mingo@kernel.org>
Wed, 24 Sep 2014 12:48:11 +0000 (14:48 +0200)
commitdc633982ff3f4fd74cdc11b5a6ae53d39a0b2451
tree756b335d9cdf75ee9e3f4dd4bdfc21e05518f361
parent4f7cf3a992cc0c15c97d2e34ea08a1cb7faace39
perf: Do not POLLHUP event if it has children

Currently we return POLLHUP in event polling if the monitored
process is done, but we didn't consider possible children,
that might be still running and producing data.

Before returning POLLHUP making sure that:

   1) the monitored task has exited and that
   2) we don't have any children to monitor

Also adding parent wakeup when the child event is gone.

Suggested-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Signed-off-by: Jiri Olsa <jolsa@kernel.org>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Link: http://lkml.kernel.org/r/1410520708-19275-1-git-send-email-jolsa@kernel.org
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Stephane Eranian <eranian@google.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
kernel/events/core.c