* [PATCH 2/2] [BUGFIX] perf probe: Fix memory leaks in add_perf_probe_events
[not found] <20100802121739.31805.94789.stgit@ltc236.sdl.hitachi.co.jp>
@ 2010-08-03 2:11 ` Masami Hiramatsu
2010-08-07 7:01 ` [tip:perf/core] " tip-bot for Masami Hiramatsu
0 siblings, 1 reply; 2+ messages in thread
From: Masami Hiramatsu @ 2010-08-03 2:11 UTC (permalink / raw)
To: Arnaldo Carvalho de Melo
Cc: Masami Hiramatsu, Peter Zijlstra, Paul Mackerras, Ingo Molnar,
linux-kernel, 2nddept-manager
Fix several memory leaks of pkgs and tevs in add_perf_probe_events().
Signed-off-by: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
Reported-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: linux-kernel@vger.kernel.org
---
tools/perf/util/probe-event.c | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
index 2e665cb..e72f05c 100644
--- a/tools/perf/util/probe-event.c
+++ b/tools/perf/util/probe-event.c
@@ -1606,8 +1606,10 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
/* Init vmlinux path */
ret = init_vmlinux();
- if (ret < 0)
+ if (ret < 0) {
+ free(pkgs);
return ret;
+ }
/* Loop 1: convert all events */
for (i = 0; i < npevs; i++) {
@@ -1625,10 +1627,13 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
ret = __add_probe_trace_events(pkgs[i].pev, pkgs[i].tevs,
pkgs[i].ntevs, force_add);
end:
- /* Loop 3: cleanup trace events */
- for (i = 0; i < npevs; i++)
+ /* Loop 3: cleanup and free trace events */
+ for (i = 0; i < npevs; i++) {
for (j = 0; j < pkgs[i].ntevs; j++)
clear_probe_trace_event(&pkgs[i].tevs[j]);
+ free(pkgs[i].tevs);
+ }
+ free(pkgs);
return ret;
}
--
Masami HIRAMATSU
2nd Research Dept.
Hitachi, Ltd., Systems Development Laboratory
E-mail: masami.hiramatsu.pt@hitachi.com
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [tip:perf/core] perf probe: Fix memory leaks in add_perf_probe_events
2010-08-03 2:11 ` [PATCH 2/2] [BUGFIX] perf probe: Fix memory leaks in add_perf_probe_events Masami Hiramatsu
@ 2010-08-07 7:01 ` tip-bot for Masami Hiramatsu
0 siblings, 0 replies; 2+ messages in thread
From: tip-bot for Masami Hiramatsu @ 2010-08-07 7:01 UTC (permalink / raw)
To: linux-tip-commits
Cc: linux-kernel, paulus, acme, hpa, mingo, a.p.zijlstra,
masami.hiramatsu.pt, tglx, mingo
Commit-ID: 449e5b247ca7c9dc9fc3391b7eebfefdeb2ce1fc
Gitweb: http://git.kernel.org/tip/449e5b247ca7c9dc9fc3391b7eebfefdeb2ce1fc
Author: Masami Hiramatsu <masami.hiramatsu.pt@hitachi.com>
AuthorDate: Tue, 3 Aug 2010 11:11:40 +0900
Committer: Arnaldo Carvalho de Melo <acme@redhat.com>
CommitDate: Fri, 6 Aug 2010 16:25:56 -0300
perf probe: Fix memory leaks in add_perf_probe_events
Fix several memory leaks of pkgs and tevs in add_perf_probe_events().
Reported-by: Arnaldo Carvalho de Melo <acme@redhat.com>
Cc: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Ingo Molnar <mingo@elte.hu>
Cc: linux-kernel@vger.kernel.org
LKML-Reference: <4C577ADC.1000309@hitachi.com>
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
---
tools/perf/util/probe-event.c | 11 ++++++++---
1 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/tools/perf/util/probe-event.c b/tools/perf/util/probe-event.c
index 2e665cb..e72f05c 100644
--- a/tools/perf/util/probe-event.c
+++ b/tools/perf/util/probe-event.c
@@ -1606,8 +1606,10 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
/* Init vmlinux path */
ret = init_vmlinux();
- if (ret < 0)
+ if (ret < 0) {
+ free(pkgs);
return ret;
+ }
/* Loop 1: convert all events */
for (i = 0; i < npevs; i++) {
@@ -1625,10 +1627,13 @@ int add_perf_probe_events(struct perf_probe_event *pevs, int npevs,
ret = __add_probe_trace_events(pkgs[i].pev, pkgs[i].tevs,
pkgs[i].ntevs, force_add);
end:
- /* Loop 3: cleanup trace events */
- for (i = 0; i < npevs; i++)
+ /* Loop 3: cleanup and free trace events */
+ for (i = 0; i < npevs; i++) {
for (j = 0; j < pkgs[i].ntevs; j++)
clear_probe_trace_event(&pkgs[i].tevs[j]);
+ free(pkgs[i].tevs);
+ }
+ free(pkgs);
return ret;
}
^ permalink raw reply related [flat|nested] 2+ messages in thread
end of thread, other threads:[~2010-08-07 7:01 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <20100802121739.31805.94789.stgit@ltc236.sdl.hitachi.co.jp>
2010-08-03 2:11 ` [PATCH 2/2] [BUGFIX] perf probe: Fix memory leaks in add_perf_probe_events Masami Hiramatsu
2010-08-07 7:01 ` [tip:perf/core] " tip-bot for Masami Hiramatsu
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.