Patch "perf: Do not double free" has been added to the 4.4-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
perf: Do not double free
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
perf-do-not-double-free.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
130056275ade730e7a79c110212c8815202773eeMon Sep 17 00:00:00 2001
From: Peter Zijlstra <[email protected]>
Date: Wed, 24 Feb 2016 18:45:41 +0100
Subject: perf: Do not double free
From: Peter Zijlstra <[email protected]>
commit 130056275ade730e7a79c110212c8815202773ee upstream.
In case of: err_file: fput(event_file), we'll end up calling perf_release() which in turn will free the event.
Do not then free the event _again_.
--- kernel/events/core.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)
kernel/events/core.c +6 -1
@@ -8583,7 +8583,12 @@ err_context:perf_unpin_context (ctx);put_ctx (ctx); err_alloc: -free_event (event); +/* +* If event_file is set, the fput() above will have called ->release() +* and that will take care of freeing the event. +*/ +if (!event_file) +free_event (event); err_cpus:put_online_cpus (); err_task:
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/perf-cure-event-pending_disable-race.patch queue-4.4/perf-do-not-double-free.patch