Re: [PATCH v2 perf,bpf 08/11] perf, bpf: save btf information as headers to perf.data

From: Arnaldo Carvalho de Melo
Date: Fri Feb 15 2019 - 12:40:29 EST


Em Fri, Feb 15, 2019 at 05:25:01PM +0000, Song Liu escreveu:
> > On Feb 15, 2019, at 6:26 AM, Arnaldo Carvalho de Melo <acme@xxxxxxxxxx> wrote:
> > Em Thu, Feb 14, 2019 at 04:00:09PM -0800, Song Liu escreveu:
> >> This patch enables perf-record to save btf information as headers to
> >> perf.data A new header type HEADER_BTF is introduced for this data.

> > Wouldn't it be better for this HEADER_BTF to be introduced
> > already as an user space event, Song, see:

> > tools/perf/util/event.h

> > and:

> > tools/perf/util/event.c

> > perf_event__synthesize_cpu_map()

> BTF would be short living for short living BPF programs. I guess
> saving them as header is easier than merging them with samples.

> What's the benefit of saving them as user space events?

When we work with pipe mode, i.e.:

perf record -o - | perf report -i -

and other combinations (with 'perf script', 'perf inject', etc), we need
a way to pass the headers to the other side, and the way was via user
space events.

This is something Stephane and Jiri have been discussing recently,
probably they have more justifications, Stephane, Jiri?

- Arnaldo