Skip to content

Commit c5b9678

Browse files
Peter ZijlstraIngo Molnar
authored andcommitted
perf/bpf: Robustify perf_event_free_bpf_prog()
Ensure perf_event_free_bpf_prog() is safe to call a second time; notably without making any references to event->pmu when there is no prog left. Note: perf_event_detach_bpf_prog() might leave a stale event->prog Signed-off-by: Peter Zijlstra (Intel) <[email protected]> Signed-off-by: Ingo Molnar <[email protected]> Reviewed-by: Ravi Bangoria <[email protected]> Cc: Alexei Starovoitov <[email protected]> Cc: Daniel Borkmann <[email protected]> Cc: Andrii Nakryiko <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent adc38b4 commit c5b9678

File tree

1 file changed

+3
-0
lines changed

1 file changed

+3
-0
lines changed

kernel/events/core.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -10905,6 +10905,9 @@ int perf_event_set_bpf_prog(struct perf_event *event, struct bpf_prog *prog,
1090510905

1090610906
void perf_event_free_bpf_prog(struct perf_event *event)
1090710907
{
10908+
if (!event->prog)
10909+
return;
10910+
1090810911
if (!perf_event_is_tracing(event)) {
1090910912
perf_event_free_bpf_handler(event);
1091010913
return;

0 commit comments

Comments
 (0)