Re: [PATCH] perf tools: Fix perf_env__find_bpf_prog_info rb tree lookup

From: Jiri Olsa
Date: Tue Apr 16 2019 - 10:34:57 EST


On Tue, Apr 16, 2019 at 11:20:28AM -0300, Arnaldo Carvalho de Melo wrote:
> Em Tue, Apr 16, 2019 at 03:41:51PM +0200, Jiri Olsa escreveu:
> > We currently don't return NULL in case we don't find
> > the bpf_prog_info_node, fixing that.
>
> Can you please try to figure out what was the changeset that introduced
> this problem so that we can have a Fixes: tag that helps me determine if
> this should go to perf/urgent (likely) or (perf/core) and to help the
> stable guys as well?

sry, I keep forgetting this..

Fixes: e4378f0cb90b ("perf bpf: Save bpf_prog_info in a rbtree in perf_env")

thanks,
jirka

>
> Thanks,
>
> - Arnaldo
>
> > Cc: Song Liu <songliubraving@xxxxxx>
> > Link: http://lkml.kernel.org/n/tip-bp07cla6dy6ifydl1sfoiorw@xxxxxxxxxxxxxx
> > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx>
> > ---
> > tools/perf/util/env.c | 4 +++-
> > 1 file changed, 3 insertions(+), 1 deletion(-)
> >
> > diff --git a/tools/perf/util/env.c b/tools/perf/util/env.c
> > index c6351b557bb0..34a363f2e71b 100644
> > --- a/tools/perf/util/env.c
> > +++ b/tools/perf/util/env.c
> > @@ -57,9 +57,11 @@ struct bpf_prog_info_node *perf_env__find_bpf_prog_info(struct perf_env *env,
> > else if (prog_id > node->info_linear->info.id)
> > n = n->rb_right;
> > else
> > - break;
> > + goto out;
> > }
> > + node = NULL;
> >
> > +out:
> > up_read(&env->bpf_progs.lock);
> > return node;
> > }
> > --
> > 2.17.2
>
> --
>
> - Arnaldo