]> git.kernelconcepts.de Git - karo-tx-linux.git/commitdiff
perf: Fix resource leak in failure path of perf_event_open()
authorTejun Heo <tj@kernel.org>
Sat, 1 May 2010 08:11:35 +0000 (10:11 +0200)
committerGreg Kroah-Hartman <gregkh@suse.de>
Wed, 12 May 2010 21:57:05 +0000 (14:57 -0700)
commit 048c852051d2bd5da54a4488bc1f16b0fc74c695 upstream.

perf_event_open() kfrees event after init failure which doesn't
release all resources allocated by perf_event_alloc().  Use
free_event() instead.

Signed-off-by: Tejun Heo <tj@kernel.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Paul Mackerras <paulus@au1.ibm.com>
Cc: Arnaldo Carvalho de Melo <acme@redhat.com>
LKML-Reference: <4BDBE237.1040809@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
kernel/perf_event.c

index 447e8db3e4edf2d532146bff8445056b951edfba..72df1eb4828216b9a71673d909946dcc5ce7b327 100644 (file)
@@ -4609,7 +4609,7 @@ err_fput_free_put_context:
 
 err_free_put_context:
        if (err < 0)
-               kfree(event);
+               free_event(event);
 
 err_put_context:
        if (err < 0)