summaryrefslogtreecommitdiffstats
path: root/kernel/trace
diff options
context:
space:
mode:
authorzhangyi (F) <yi.zhang@huawei.com>2019-02-13 20:29:06 +0800
committerSteven Rostedt (VMware) <rostedt@goodmis.org>2019-02-20 13:47:08 -0500
commite7f0c424d0806b05d6f47be9f202b037eb701707 (patch)
treea67938d00ec638d12bb6d30b4bcc42f1842db95b /kernel/trace
parentce59b8e99c2c3e5828bce0b434850c6fec9d2397 (diff)
downloadlinux-e7f0c424d0806b05d6f47be9f202b037eb701707.tar.gz
linux-e7f0c424d0806b05d6f47be9f202b037eb701707.tar.bz2
linux-e7f0c424d0806b05d6f47be9f202b037eb701707.zip
tracing: Do not free iter->trace in fail path of tracing_open_pipe()
Commit d716ff71dd12 ("tracing: Remove taking of trace_types_lock in pipe files") use the current tracer instead of the copy in tracing_open_pipe(), but it forget to remove the freeing sentence in the error path. There's an error path that can call kfree(iter->trace) after the iter->trace was assigned to tr->current_trace, which would be bad to free. Link: http://lkml.kernel.org/r/1550060946-45984-1-git-send-email-yi.zhang@huawei.com Cc: stable@vger.kernel.org Fixes: d716ff71dd12 ("tracing: Remove taking of trace_types_lock in pipe files") Signed-off-by: zhangyi (F) <yi.zhang@huawei.com> Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
Diffstat (limited to 'kernel/trace')
-rw-r--r--kernel/trace/trace.c1
1 files changed, 0 insertions, 1 deletions
diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
index c521b7347482..b583ff7656bb 100644
--- a/kernel/trace/trace.c
+++ b/kernel/trace/trace.c
@@ -5624,7 +5624,6 @@ out:
return ret;
fail:
- kfree(iter->trace);
kfree(iter);
__trace_array_put(tr);
mutex_unlock(&trace_types_lock);