From: Arnaldo Carvalho de Melo <acme@kernel.org>
To: Namhyung Kim <namhyung@kernel.org>
Cc: Ian Rogers <irogers@google.com>,
Peter Zijlstra <peterz@infradead.org>,
Ingo Molnar <mingo@redhat.com>,
Mark Rutland <mark.rutland@arm.com>,
Alexander Shishkin <alexander.shishkin@linux.intel.com>,
Jiri Olsa <jolsa@kernel.org>,
Adrian Hunter <adrian.hunter@intel.com>,
Kan Liang <kan.liang@linux.intel.com>,
Florian Fischer <florian.fischer@muhq.space>,
linux-perf-users@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1] perf evsel: Avoid segv if delete is called on NULL
Date: Mon, 10 Apr 2023 22:02:25 -0300 [thread overview]
Message-ID: <ZDSxoUqxij2yJjXX@kernel.org> (raw)
In-Reply-To: <CAM9d7cjuqcwcy+CwAPj8wK4hO2Pzr6xor76+jW-Do443Gr2ENQ@mail.gmail.com>
Em Mon, Apr 10, 2023 at 04:20:57PM -0700, Namhyung Kim escreveu:
> Hi Ian,
>
> On Mon, Apr 10, 2023 at 1:57 PM Ian Rogers <irogers@google.com> wrote:
> >
> > Seen in "perf stat --bpf-counters --for-each-cgroup test" running in a
> > container:
> >
> > libbpf: Failed to bump RLIMIT_MEMLOCK (err = -1), you might need to do it explicitly!
> > libbpf: Error in bpf_object__probe_loading():Operation not permitted(1). Couldn't load trivial BPF program. Make sure your kernel supports BPF (CONFIG_BPF_SYSCALL=y) and/or that RLIMIT_MEMLOCK is set to big enough value.
> > libbpf: failed to load object 'bperf_cgroup_bpf'
> > libbpf: failed to load BPF skeleton 'bperf_cgroup_bpf': -1
> > Failed to load cgroup skeleton
> >
> > #0 0x55f28a650981 in list_empty tools/include/linux/list.h:189
> > #1 0x55f28a6593b4 in evsel__exit util/evsel.c:1518
> > #2 0x55f28a6596af in evsel__delete util/evsel.c:1544
> > #3 0x55f28a89d166 in bperf_cgrp__destroy util/bpf_counter_cgroup.c:283
> > #4 0x55f28a899e9a in bpf_counter__destroy util/bpf_counter.c:816
> > #5 0x55f28a659455 in evsel__exit util/evsel.c:1520
> > #6 0x55f28a6596af in evsel__delete util/evsel.c:1544
> > #7 0x55f28a640d4d in evlist__purge util/evlist.c:148
> > #8 0x55f28a640ea6 in evlist__delete util/evlist.c:169
> > #9 0x55f28a4efbf2 in cmd_stat tools/perf/builtin-stat.c:2598
> > #10 0x55f28a6050c2 in run_builtin tools/perf/perf.c:330
> > #11 0x55f28a605633 in handle_internal_command tools/perf/perf.c:384
> > #12 0x55f28a6059fb in run_argv tools/perf/perf.c:428
> > #13 0x55f28a6061d3 in main tools/perf/perf.c:562
> >
> > Signed-off-by: Ian Rogers <irogers@google.com>
>
> Acked-by: Namhyung Kim <namhyung@kernel.org>
Thanks, applied.
- Arnaldo
> In addition to this, I think bperf code should clear the evsel->bpf_skel
> at the end of the bpf_counter__destroy() to avoid confusion with the
> bpf_filter as they share the fields in a union.
>
> Thanks,
> Namhyung
>
>
> > ---
> > tools/perf/util/evsel.c | 3 +++
> > 1 file changed, 3 insertions(+)
> >
> > diff --git a/tools/perf/util/evsel.c b/tools/perf/util/evsel.c
> > index dc3faf005c3b..fe3ce765a4f3 100644
> > --- a/tools/perf/util/evsel.c
> > +++ b/tools/perf/util/evsel.c
> > @@ -1541,6 +1541,9 @@ void evsel__exit(struct evsel *evsel)
> >
> > void evsel__delete(struct evsel *evsel)
> > {
> > + if (!evsel)
> > + return;
> > +
> > evsel__exit(evsel);
> > free(evsel);
> > }
> > --
> > 2.40.0.577.gac1e443424-goog
> >
--
- Arnaldo
prev parent reply other threads:[~2023-04-11 1:02 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-04-10 20:56 [PATCH v1] perf evsel: Avoid segv if delete is called on NULL Ian Rogers
2023-04-10 23:20 ` Namhyung Kim
2023-04-11 1:02 ` Arnaldo Carvalho de Melo [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZDSxoUqxij2yJjXX@kernel.org \
--to=acme@kernel.org \
--cc=adrian.hunter@intel.com \
--cc=alexander.shishkin@linux.intel.com \
--cc=florian.fischer@muhq.space \
--cc=irogers@google.com \
--cc=jolsa@kernel.org \
--cc=kan.liang@linux.intel.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-perf-users@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mingo@redhat.com \
--cc=namhyung@kernel.org \
--cc=peterz@infradead.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.