Messages in this thread | ![/](/images/icornerl.gif) | | From | Namhyung Kim <> | Date | Tue, 10 Jan 2023 11:01:42 -0800 | Subject | Re: [PATCH 2/3] perf/core: Set data->sample_flags in perf_prepare_sample() |
| |
On Tue, Jan 10, 2023 at 2:55 AM Peter Zijlstra <peterz@infradead.org> wrote: > > 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?
Sure, will do.
Thanks, Namhyung
| ![\](/images/icornerr.gif) |