1 Star 0 Fork 16

wmy/trace-cmd

forked from src-openEuler/trace-cmd 
加入 Gitee
与超过 1200万 开发者一起发现、参与优秀开源项目,私有仓库也完全免费 :)
免费加入
该仓库未声明开源许可证文件(LICENSE),使用请关注具体项目描述及其代码上游依赖。
克隆/下载
backport-trace-cmd-library-Fixed-a-memory-leak-on-input-handl.patch 1.33 KB
一键复制 编辑 原始数据 按行查看 历史
Bolehu 提交于 2023-01-06 04:56 . Fixed a memory leak on input handler close
From 402be29ae6fa1e29c963c71be2713687a4a71686 Mon Sep 17 00:00:00 2001
From: "Tzvetomir Stoyanov (VMware)" <tz.stoyanov@gmail.com>
Date: Tue, 14 Sep 2021 16:12:15 +0300
Subject: [PATCH] trace-cmd library: Fixed a memory leak on input handler close
When an input handler to a trace file is closed with tracecmd_close(),
the list with buffers is not freed. This leads to a memory leak. Added
logic to free that list.
Link: https://lore.kernel.org/linux-trace-devel/20210914131232.3964615-5-tz.stoyanov@gmail.com
Signed-off-by: Tzvetomir Stoyanov (VMware) <tz.stoyanov@gmail.com>
Signed-off-by: Steven Rostedt (VMware) <rostedt@goodmis.org>
---
lib/trace-cmd/trace-input.c | 5 +++++
1 file changed, 5 insertions(+)
diff --git a/lib/trace-cmd/trace-input.c b/lib/trace-cmd/trace-input.c
index 9253bc37..ffe87e8a 100644
--- a/lib/trace-cmd/trace-input.c
+++ b/lib/trace-cmd/trace-input.c
@@ -3484,6 +3484,7 @@ void tracecmd_ref(struct tracecmd_input *handle)
void tracecmd_close(struct tracecmd_input *handle)
{
int cpu;
+ int i;
if (!handle)
return;
@@ -3521,6 +3522,10 @@ void tracecmd_close(struct tracecmd_input *handle)
free(handle->version);
close(handle->fd);
+ for (i = 0; i < handle->nr_buffers; i++)
+ free(handle->buffers[i].name);
+ free(handle->buffers);
+
tracecmd_free_hooks(handle->hooks);
handle->hooks = NULL;
--
2.33.0
马建仓 AI 助手
尝试更多
代码解读
代码找茬
代码优化
1
https://gitee.com/meiyang666/trace-cmd.git
git@gitee.com:meiyang666/trace-cmd.git
meiyang666
trace-cmd
trace-cmd
master

搜索帮助

23e8dbc6 1850385 7e0993f3 1850385