Re: [PATCH 2/3] perf/core: Set data->sample_flags in perf_prepare_sample()

From: Peter Zijlstra
Date: Tue Jan 10 2023 - 05:56:48 EST


On Mon, Jan 09, 2023 at 12:21:25PM -0800, Namhyung Kim wrote:

> > However; inspired by your next patch; we can do something like so:
> >
> > if (filtered_sample_type & PERF_SAMPLE_CALLCHAIN) {
> > data->callchain = perf_callchain(event, regs);
> > data->sample_flags |= PERF_SAMPLE_CALLCHAIN;
> >
> > data->size += (1 + data->callchain->nr) * sizeof(u64);
> > }
>
> This is fine as long as all other places (like in PMU drivers) set the
> callchain update the sample data size accordingly. If not, we can get
> the callchain but the data size will be wrong.

Good point, maybe add a helper there to ensure that code doesn't
duplicate/diverge?