All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] trace_kprobes: fix memory leak
@ 2009-11-25  8:32 Lai Jiangshan
  2009-11-25 12:42 ` Masami Hiramatsu
  2009-11-27  5:49 ` [tip:perf/core] trace_kprobes: Fix " tip-bot for Lai Jiangshan
  0 siblings, 2 replies; 3+ messages in thread
From: Lai Jiangshan @ 2009-11-25  8:32 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: Steven Rostedt, Frederic Weisbecker, Masami Hiramatsu, LKML


tp->nr_args is not set before we "goto error",
it causes memory leak for free_trace_probe() use tp->nr_args
to free memory of args.

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
---
diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
index 79ce6a2..82e8583 100644
--- a/kernel/trace/trace_kprobe.c
+++ b/kernel/trace/trace_kprobe.c
@@ -704,10 +704,12 @@ static int create_trace_probe(int argc, char **argv)
 		ret = parse_probe_arg(arg, &tp->args[i].fetch, is_return);
 		if (ret) {
 			pr_info("Parse error at argument%d. (%d)\n", i, ret);
+			kfree(tp->args[i].name);
 			goto error;
 		}
+
+		tp->nr_args++;
 	}
-	tp->nr_args = i;
 
 	ret = register_trace_probe(tp);
 	if (ret)



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

* Re: [PATCH 1/3] trace_kprobes: fix memory leak
  2009-11-25  8:32 [PATCH 1/3] trace_kprobes: fix memory leak Lai Jiangshan
@ 2009-11-25 12:42 ` Masami Hiramatsu
  2009-11-27  5:49 ` [tip:perf/core] trace_kprobes: Fix " tip-bot for Lai Jiangshan
  1 sibling, 0 replies; 3+ messages in thread
From: Masami Hiramatsu @ 2009-11-25 12:42 UTC (permalink / raw)
  To: Lai Jiangshan; +Cc: Ingo Molnar, Steven Rostedt, Frederic Weisbecker, LKML

Hi Lai,

Thank you for fixing bugs!

Acked-by: Masami Hiramatsu <mhiramat@redhat.com>

Lai Jiangshan wrote:
> 
> tp->nr_args is not set before we "goto error",
> it causes memory leak for free_trace_probe() use tp->nr_args
> to free memory of args.
> 
> Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
> ---
> diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
> index 79ce6a2..82e8583 100644
> --- a/kernel/trace/trace_kprobe.c
> +++ b/kernel/trace/trace_kprobe.c
> @@ -704,10 +704,12 @@ static int create_trace_probe(int argc, char **argv)
>  		ret = parse_probe_arg(arg, &tp->args[i].fetch, is_return);
>  		if (ret) {
>  			pr_info("Parse error at argument%d. (%d)\n", i, ret);
> +			kfree(tp->args[i].name);
>  			goto error;
>  		}
> +
> +		tp->nr_args++;
>  	}
> -	tp->nr_args = i;
>  
>  	ret = register_trace_probe(tp);
>  	if (ret)
> 
> 

-- 
Masami Hiramatsu

Software Engineer
Hitachi Computer Products (America), Inc.
Software Solutions Division

e-mail: mhiramat@redhat.com


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

* [tip:perf/core] trace_kprobes: Fix memory leak
  2009-11-25  8:32 [PATCH 1/3] trace_kprobes: fix memory leak Lai Jiangshan
  2009-11-25 12:42 ` Masami Hiramatsu
@ 2009-11-27  5:49 ` tip-bot for Lai Jiangshan
  1 sibling, 0 replies; 3+ messages in thread
From: tip-bot for Lai Jiangshan @ 2009-11-27  5:49 UTC (permalink / raw)
  To: linux-tip-commits
  Cc: linux-kernel, hpa, mingo, fweisbec, rostedt, tglx, laijs,
	mhiramat, mingo

Commit-ID:  abab9d37d2a826fcf588c5f30152dbe05c40111c
Gitweb:     http://git.kernel.org/tip/abab9d37d2a826fcf588c5f30152dbe05c40111c
Author:     Lai Jiangshan <laijs@cn.fujitsu.com>
AuthorDate: Wed, 25 Nov 2009 16:32:21 +0800
Committer:  Ingo Molnar <mingo@elte.hu>
CommitDate: Fri, 27 Nov 2009 06:43:04 +0100

trace_kprobes: Fix memory leak

tp->nr_args is not set before we "goto error",
it causes memory leak for free_trace_probe() use tp->nr_args
to free memory of args.

Signed-off-by: Lai Jiangshan <laijs@cn.fujitsu.com>
Acked-by: Masami Hiramatsu <mhiramat@redhat.com>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Frederic Weisbecker <fweisbec@gmail.com>
LKML-Reference: <4B0CEB95.2060107@cn.fujitsu.com>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
---
 kernel/trace/trace_kprobe.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/kernel/trace/trace_kprobe.c b/kernel/trace/trace_kprobe.c
index 79ce6a2..82e8583 100644
--- a/kernel/trace/trace_kprobe.c
+++ b/kernel/trace/trace_kprobe.c
@@ -704,10 +704,12 @@ static int create_trace_probe(int argc, char **argv)
 		ret = parse_probe_arg(arg, &tp->args[i].fetch, is_return);
 		if (ret) {
 			pr_info("Parse error at argument%d. (%d)\n", i, ret);
+			kfree(tp->args[i].name);
 			goto error;
 		}
+
+		tp->nr_args++;
 	}
-	tp->nr_args = i;
 
 	ret = register_trace_probe(tp);
 	if (ret)

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

end of thread, other threads:[~2009-11-27  5:50 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-11-25  8:32 [PATCH 1/3] trace_kprobes: fix memory leak Lai Jiangshan
2009-11-25 12:42 ` Masami Hiramatsu
2009-11-27  5:49 ` [tip:perf/core] trace_kprobes: Fix " tip-bot for Lai Jiangshan

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.