lkml.org 
[lkml]   [2019]   [Nov]   [11]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH] perf tools: address 2 parse event memory leaks
Em Fri, Nov 08, 2019 at 11:58:40PM -0800, Ian Rogers escreveu:
> Using return rather than YYABORT means that the stack isn't cleared up
> following a failure. The change to YYABORT means the return value is 1
> rather than -1, but the callers just check for a result of 0 (success).
> Add missing free of a list when an error occurs in event_pmu.

Thanks, applied.

- Arnaldo

> Signed-off-by: Ian Rogers <irogers@google.com>
> ---
> tools/perf/util/parse-events.y | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/tools/perf/util/parse-events.y b/tools/perf/util/parse-events.y
> index 4cac830015be..e2eea4e601b4 100644
> --- a/tools/perf/util/parse-events.y
> +++ b/tools/perf/util/parse-events.y
> @@ -284,6 +284,7 @@ PE_NAME opt_pmu_config
> do { \
> parse_events_terms__delete($2); \
> parse_events_terms__delete(orig_terms); \
> + free(list); \
> free($1); \
> free(pattern); \
> YYABORT; \
> @@ -550,7 +551,7 @@ tracepoint_name opt_event_config
> free($1.event);
> if (err) {
> free(list);
> - return -1;
> + YYABORT;
> }
> $$ = list;
> }
> --
> 2.24.0.432.g9d3f5f5b63-goog

--

- Arnaldo

\
 
 \ /
  Last update: 2019-11-11 15:13    [W:0.059 / U:0.440 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site