Re: [PATCH] perf trace: Fix potential USE_AFTER_FREE problem

From: Jiri Olsa
Date: Thu Feb 14 2019 - 03:34:18 EST


On Thu, Feb 14, 2019 at 12:23:56AM -0500, Bo YU wrote:
> From: Bo Yu <tsu.yubo@xxxxxxxxx>
>
> There is a freed pointer "evsel", so fix it.
>
> Detected by CoverityScan, CID#1442595("Memory-illegalaccesses
> (USE_AFTER_FREE)")
> Fixes: 6ab3bc240ade4("perf trace: Support multiple "vfs_getname" probes")
>
> Signed-off-by: Bo Yu <tsu.yubo@xxxxxxxxx>
> ---
> tools/perf/builtin-trace.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/tools/perf/builtin-trace.c b/tools/perf/builtin-trace.c
> index b36061cd1ab8..4036b20a1067 100644
> --- a/tools/perf/builtin-trace.c
> +++ b/tools/perf/builtin-trace.c
> @@ -2515,7 +2515,7 @@ static size_t trace__fprintf_thread_summary(struct trace *trace, FILE *fp);
> static bool perf_evlist__add_vfs_getname(struct perf_evlist *evlist)
> {
> bool found = false;
> - struct perf_evsel *evsel, *tmp;
> + struct perf_evsel *evsel = NULL, *tmp;

hum, I can't see how this change could matter,
could you pelase explain?

jirka

> struct parse_events_error err = { .idx = 0, };
> int ret = parse_events(evlist, "probe:vfs_getname*", &err);
>
> --
> 2.11.0
>