From: Daniel Borkmann <dan...@iogearbox.net> Date: Mon, 27 Jun 2016 21:38:11 +0200
> Commit dead9f29ddcc ("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: dead9f29ddcc ("perf: Fix race in BPF program unregister") > Signed-off-by: Daniel Borkmann <dan...@iogearbox.net> > Acked-by: Alexei Starovoitov <a...@kernel.org> > Cc: Jann Horn <j...@thejh.net> Applied and queued up for -stable, thanks Daniel.