diff options
author | Steven Rostedt (Red Hat) <rostedt@goodmis.org> | 2014-06-07 05:17:28 +0200 |
---|---|---|
committer | Steven Rostedt <rostedt@goodmis.org> | 2014-06-07 05:17:28 +0200 |
commit | a9fcaaac37b3baba1343f906f52aeb65c4d4e356 (patch) | |
tree | b0fb182c483b2737f410a50588a7158288b4dd27 /kernel/trace/trace.c | |
parent | tracing: Fix leak of ring buffer data when new instances creation fails (diff) | |
download | linux-a9fcaaac37b3baba1343f906f52aeb65c4d4e356.tar.xz linux-a9fcaaac37b3baba1343f906f52aeb65c4d4e356.zip |
tracing: Fix memory leak on instance deletion
When an instance is created, it also gets a snapshot ring buffer
allocated (with minimum of pages). But when it is deleted the snapshot
buffer is not. There was a helper function added to match the allocation
of these ring buffers to a way to free them, but it wasn't used by
the deletion of an instance. Using that helper function solves this
memory leak.
Signed-off-by: Steven Rostedt <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace/trace.c')
-rw-r--r-- | kernel/trace/trace.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c index 26cfff38e2ab..16f7038d1f4d 100644 --- a/kernel/trace/trace.c +++ b/kernel/trace/trace.c @@ -6349,8 +6349,7 @@ static int instance_delete(const char *name) event_trace_del_tracer(tr); ftrace_destroy_function_files(tr); debugfs_remove_recursive(tr->dir); - free_percpu(tr->trace_buffer.data); - ring_buffer_free(tr->trace_buffer.buffer); + free_trace_buffers(tr); kfree(tr->name); kfree(tr); |