All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] perf c2c: fix memory leak in build_cl_output()
@ 2019-10-15  2:54 Yunfeng Ye
  2019-10-15  8:47 ` Jiri Olsa
  2019-10-21  6:26 ` [tip: perf/urgent] perf c2c: Fix " tip-bot2 for Yunfeng Ye
  0 siblings, 2 replies; 4+ messages in thread
From: Yunfeng Ye @ 2019-10-15  2:54 UTC (permalink / raw)
  To: peterz, mingo, acme, mark.rutland, alexander.shishkin, jolsa,
	namhyung
  Cc: linux-kernel, hushiyuan, linfeilong

There is a memory leak problem in the failure paths of
build_cl_output(), so fix it.

Signed-off-by: Yunfeng Ye <yeyunfeng@huawei.com>
---
 tools/perf/builtin-c2c.c | 14 +++++++++-----
 1 file changed, 9 insertions(+), 5 deletions(-)

diff --git a/tools/perf/builtin-c2c.c b/tools/perf/builtin-c2c.c
index 3542b6a..e69f449 100644
--- a/tools/perf/builtin-c2c.c
+++ b/tools/perf/builtin-c2c.c
@@ -2635,6 +2635,7 @@ static int build_cl_output(char *cl_sort, bool no_source)
 	bool add_sym   = false;
 	bool add_dso   = false;
 	bool add_src   = false;
+	int ret = 0;

 	if (!buf)
 		return -ENOMEM;
@@ -2653,7 +2654,8 @@ static int build_cl_output(char *cl_sort, bool no_source)
 			add_dso = true;
 		} else if (strcmp(tok, "offset")) {
 			pr_err("unrecognized sort token: %s\n", tok);
-			return -EINVAL;
+			ret = -EINVAL;
+			goto err;
 		}
 	}

@@ -2676,13 +2678,15 @@ static int build_cl_output(char *cl_sort, bool no_source)
 		add_sym ? "symbol," : "",
 		add_dso ? "dso," : "",
 		add_src ? "cl_srcline," : "",
-		"node") < 0)
-		return -ENOMEM;
+		"node") < 0) {
+		ret = -ENOMEM;
+		goto err;
+	}

 	c2c.show_src = add_src;
-
+err:
 	free(buf);
-	return 0;
+	return ret;
 }

 static int setup_coalesce(const char *coalesce, bool no_source)
-- 
2.7.4.3


^ permalink raw reply related	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2019-10-21  6:27 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2019-10-15  2:54 [PATCH] perf c2c: fix memory leak in build_cl_output() Yunfeng Ye
2019-10-15  8:47 ` Jiri Olsa
2019-10-15 15:08   ` Arnaldo Carvalho de Melo
2019-10-21  6:26 ` [tip: perf/urgent] perf c2c: Fix " tip-bot2 for Yunfeng Ye

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.