[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20200818124443.GB2667554@kernel.org>
Date: Tue, 18 Aug 2020 09:44:43 -0300
From: Arnaldo Carvalho de Melo <acme@...nel.org>
To: Tiezhu Yang <yangtiezhu@...ngson.cn>
Cc: Ingo Molnar <mingo@...hat.com>,
Peter Zijlstra <peterz@...radead.org>,
Mark Rutland <mark.rutland@....com>,
Alexander Shishkin <alexander.shishkin@...ux.intel.com>,
Jiri Olsa <jolsa@...hat.com>,
Namhyung Kim <namhyung@...nel.org>,
linux-kernel@...r.kernel.org, Xuefeng Li <lixuefeng@...ngson.cn>
Subject: Re: [PATCH] perf top: Skip side-band event setup if
HAVE_LIBBPF_SUPPORT is not set
Em Tue, Aug 18, 2020 at 08:30:37PM +0800, Tiezhu Yang escreveu:
> When I execute perf top without HAVE_LIBBPF_SUPPORT, there exists the
> following segmentation fault, skip the side-band event setup to fix it,
> this is similar with commit 1101c872c8c7 ("perf record: Skip side-band
> event setup if HAVE_LIBBPF_SUPPORT is not set").
>
> [yangtiezhu@...ux perf]$ ./perf top
>
> <SNIP>
> perf: Segmentation fault
> Obtained 6 stack frames.
> ./perf(sighandler_dump_stack+0x5c) [0x12011b604]
> [0xffffffc010]
> ./perf(perf_mmap__read_init+0x3e) [0x1201feeae]
> ./perf() [0x1200d715c]
> /lib64/libpthread.so.0(+0xab9c) [0xffee10ab9c]
> /lib64/libc.so.6(+0x128f4c) [0xffedc08f4c]
> Segmentation fault
>
> I use git bisect to find commit b38d85ef49cf ("perf bpf: Decouple
> creating the evlist from adding the SB event") is the first bad
> commit, so also add the Fixes tag.
>
> Fixes: b38d85ef49cf ("perf bpf: Decouple creating the evlist from adding the SB event")
> Signed-off-by: Tiezhu Yang <yangtiezhu@...ngson.cn>
Yeah, thanks, applying.
- Arnaldo
> ---
> tools/perf/builtin-top.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/tools/perf/builtin-top.c b/tools/perf/builtin-top.c
> index 994c230..7c64134 100644
> --- a/tools/perf/builtin-top.c
> +++ b/tools/perf/builtin-top.c
> @@ -1746,6 +1746,7 @@ int cmd_top(int argc, const char **argv)
> goto out_delete_evlist;
> }
>
> +#ifdef HAVE_LIBBPF_SUPPORT
> if (!top.record_opts.no_bpf_event) {
> top.sb_evlist = evlist__new();
>
> @@ -1759,6 +1760,7 @@ int cmd_top(int argc, const char **argv)
> goto out_delete_evlist;
> }
> }
> +#endif
>
> if (perf_evlist__start_sb_thread(top.sb_evlist, target)) {
> pr_debug("Couldn't start the BPF side band thread:\nBPF programs starting from now on won't be annotatable\n");
> --
> 2.1.0
>
--
- Arnaldo
Powered by blists - more mailing lists