* [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.