Re: [PATCH bpf-next 2/3] bpf: Add bpf_perf_event_read_sample() helper

From: Namhyung Kim
Date: Wed Nov 02 2022 - 18:18:31 EST


On Tue, Nov 1, 2022 at 5:13 PM Song Liu <song@xxxxxxxxxx> wrote:
>
> On Tue, Nov 1, 2022 at 3:17 PM Namhyung Kim <namhyung@xxxxxxxxxx> wrote:
> > IIUC we want something like below to access sample data directly,
> > right?
> >
> > BPF_CORE_READ(ctx, data, ip);
> >
>
> I haven't tried this, but I guess we may need something like
>
> data = ctx->data;
> BPF_CORE_READ(data, ip);

Ok, will try.

>
> > Some fields like raw and callchains will have variable length data
> > so it'd be hard to check the boundary at load time.
>
> I think we are fine as long as we can check boundaries at run time.

Sure, that means it's the responsibility of BPF writers, right?

>
> > Also it's possible
> > that some fields are not set (according to sample type), and it'd be
> > the user's (or programmer's) responsibility to check if the data is
> > valid. If these are not the concerns, I think I'm good.
>
> So we still need 1/3 of the set to make sure the data is valid?

Of course, I'll keep it in the v2.

Thanks,
Namhyung