lineage_android_kernel_sams.../kernel/events
Al Viro d156b47c42 perf_event: Switch to internal refcount, fix race with close()
commit a6fa941d94b411bbd2b6421ffbde6db3c93e65ab upstream.

Don't mess with file refcounts (or keep a reference to file, for
that matter) in perf_event.  Use explicit refcount of its own
instead.  Deal with the race between the final reference to event
going away and new children getting created for it by use of
atomic_long_inc_not_zero() in inherit_event(); just have the
latter free what it had allocated and return NULL, that works
out just fine (children of siblings of something doomed are
created as singletons, same as if the child of leader had been
created and immediately killed).

Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Link: http://lkml.kernel.org/r/20120820135925.GG23464@ZenIV.linux.org.uk
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2012-10-02 10:29:54 -07:00
..
Makefile perf: Carve out callchain functionality 2011-11-14 13:31:26 +01:00
callchain.c perf: Don't call release_callchain_buffers() if allocation fails 2012-01-21 09:33:41 +01:00
core.c perf_event: Switch to internal refcount, fix race with close() 2012-10-02 10:29:54 -07:00
hw_breakpoint.c perf: Disable PERF_SAMPLE_BRANCH_* when not supported 2012-03-05 14:55:42 +01:00
internal.h Merge branch 'perf/urgent' into perf/core 2011-12-06 06:43:49 +01:00
ring_buffer.c Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/trivial 2012-01-08 13:21:22 -08:00