From: Peter Zijlstra Date: Thu, 18 Jun 2026 12:18:27 +0000 (+0200) Subject: perf: Fix addr_filter_ranges lifetime X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=e62d4192e593630f355094adc467058a05bdc935;p=thirdparty%2Flinux.git perf: Fix addr_filter_ranges lifetime Lee Jia Jie reported that since event::addr_filter_ranges is used under RCU, it should be RCU freed. Reported-by: Lee Jia Jie Signed-off-by: Peter Zijlstra (Intel) --- diff --git a/kernel/events/core.c b/kernel/events/core.c index 7935d5663944e..c3a84c7bcaeb9 100644 --- a/kernel/events/core.c +++ b/kernel/events/core.c @@ -5303,6 +5303,7 @@ static void free_event_rcu(struct rcu_head *head) if (event->ns) put_pid_ns(event->ns); perf_event_free_filter(event); + kfree(event->addr_filter_ranges); kmem_cache_free(perf_event_cache, event); } @@ -5750,8 +5751,6 @@ static void __free_event(struct perf_event *event) if (event->attach_state & PERF_ATTACH_CALLCHAIN) put_callchain_buffers(); - kfree(event->addr_filter_ranges); - if (event->attach_state & PERF_ATTACH_EXCLUSIVE) exclusive_event_destroy(event);