android_kernel_samsung_univ.../kernel/events
Daniel Borkmann 11bef1439d bpf, perf: delay release of BPF prog after grace period
[ Upstream commit ceb56070359b7329b5678b5d95a376fcb24767be ]

Commit dead9f29dd ("perf: Fix race in BPF program unregister") moved
destruction of BPF program from free_event_rcu() callback to __free_event(),
which is problematic if used with tail calls: if prog A is attached as
trace event directly, but at the same time present in a tail call map used
by another trace event program elsewhere, then we need to delay destruction
via RCU grace period since it can still be in use by the program doing the
tail call (the prog first needs to be dropped from the tail call map, then
trace event with prog A attached destroyed, so we get immediate destruction).

Fixes: dead9f29dd ("perf: Fix race in BPF program unregister")
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Alexei Starovoitov <ast@kernel.org>
Cc: Jann Horn <jann@thejh.net>
Signed-off-by: David S. Miller <davem@davemloft.net>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2016-07-11 09:31:11 -07:00
..
callchain.c treewide: Remove old email address 2015-11-23 09:44:58 +01:00
core.c bpf, perf: delay release of BPF prog after grace period 2016-07-11 09:31:11 -07:00
hw_breakpoint.c
internal.h
Makefile
ring_buffer.c perf/core: Disable the event on a truncated AUX record 2016-05-18 17:06:48 -07:00
uprobes.c treewide: Remove old email address 2015-11-23 09:44:58 +01:00