diff options
author | Slavomir Kaslev <kaslevs@vmware.com> | 2019-02-14 16:07:21 +0200 |
---|---|---|
committer | Steven Rostedt (VMware) <rostedt@goodmis.org> | 2019-02-14 12:30:22 -0500 |
commit | bdf4e8883530b0d43e5777165f00130c474cde02 (patch) | |
tree | 65bbe765d3df2b0d3ef7075da25fbfdabc19fae3 | |
parent | 1b2ab1e0290efc48e596fd261b3c5d16ed55ecdf (diff) | |
download | trace-cmd-bdf4e8883530b0d43e5777165f00130c474cde02.tar.gz |
trace-cmd: Fix tracecmd_recorder leaking file descriptors
tracecmd_recorder is leaking brass pipe() file descriptors it creates for
splice()-ing. Fix this.
Link: http://lore.kernel.org/linux-trace-devel/20190214140723.27804-1-kaslevs@vmware.com
Signed-off-by: Slavomir Kaslev <kaslevs@vmware.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
-rw-r--r-- | lib/trace-cmd/trace-recorder.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/lib/trace-cmd/trace-recorder.c b/lib/trace-cmd/trace-recorder.c index 5331925d..b941cdce 100644 --- a/lib/trace-cmd/trace-recorder.c +++ b/lib/trace-cmd/trace-recorder.c @@ -88,6 +88,12 @@ void tracecmd_free_recorder(struct tracecmd_recorder *recorder) append_file(recorder->page_size, recorder->fd1, recorder->fd2); } close: + if (recorder->brass[0] >= 0) + close(recorder->brass[0]); + + if (recorder->brass[1] >= 0) + close(recorder->brass[1]); + if (recorder->trace_fd >= 0) close(recorder->trace_fd); |