Hi LuMing,

On Sat, 27 Apr 2024 08:23:47 +0100
lumingyindet...@126.com wrote:

> From: LuMingYin <lumingyindet...@126.com>
> 
> If traceprobe_parse_probe_arg_body() failed to allocate 'parg->fmt',
> it jumps to the label 'out' instead of 'fail' by mistake.In the result,
> the buffer 'tmp' is not freed in this case and leaks its memory.
> 
> Thus jump to the label 'fail' in that error case.
> 

Looks good to me.

Acked-by: Masami Hiramatsu (Google) <mhira...@kernel.org>


Thank you!

> Fixes: 032330abd08b ("tracing/probes: Cleanup probe argument parser")
> Signed-off-by: LuMingYin <lumingyindet...@126.com>
> ---
>  kernel/trace/trace_probe.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/kernel/trace/trace_probe.c b/kernel/trace/trace_probe.c
> index c09fa6fc636e..81c319b92038 100644
> --- a/kernel/trace/trace_probe.c
> +++ b/kernel/trace/trace_probe.c
> @@ -1466,7 +1466,7 @@ static int traceprobe_parse_probe_arg_body(const char 
> *argv, ssize_t *size,
>               parg->fmt = kmalloc(len, GFP_KERNEL);
>               if (!parg->fmt) {
>                       ret = -ENOMEM;
> -                     goto out;
> +                     goto fail;
>               }
>               snprintf(parg->fmt, len, "%s[%d]", parg->type->fmttype,
>                        parg->count);
> -- 
> 2.25.1
> 
> 


-- 
Masami Hiramatsu (Google) <mhira...@kernel.org>

Reply via email to