Re: [PATCH] perf: assign proper ff->ph in perf_event__synthesize_features()

From: Arnaldo Carvalho de Melo
Date: Sat Jul 06 2019 - 13:20:34 EST


Em Wed, Jun 19, 2019 at 06:04:53PM -0700, Song Liu escreveu:
> bpf/btf write_* functions need ff->ph->env.
>
> With this missing, pipe-mode (perf record -o -) would crash like:
>
> Program terminated with signal SIGSEGV, Segmentation fault.
>
> This patch assign proper ph value to ff.

Thanks, applied.

- Arnaldo

> Cc: stable@xxxxxxxxxxxxxxx #v5.1+
> Fixes: 606f972b1361 ("perf bpf: Save bpf_prog_info information as headers to perf.data")
> Reported-by: David Carrillo Cisneros <davidca@xxxxxx>
> Signed-off-by: Song Liu <songliubraving@xxxxxx>
> ---
> tools/perf/util/header.c | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/tools/perf/util/header.c b/tools/perf/util/header.c
> index 06ddb6618ef3..5f1aa0284e1b 100644
> --- a/tools/perf/util/header.c
> +++ b/tools/perf/util/header.c
> @@ -3684,6 +3684,7 @@ int perf_event__synthesize_features(struct perf_tool *tool,
> return -ENOMEM;
>
> ff.size = sz - sz_hdr;
> + ff.ph = &session->header;
>
> for_each_set_bit(feat, header->adds_features, HEADER_FEAT_BITS) {
> if (!feat_ops[feat].synthesize) {
> --
> 2.17.1