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@linux 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 <[email protected]>

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

Reply via email to