Messages in this thread | | | From | SeongJae Park <> | Subject | Re: [PATCH] perf: Fix missing raw data on tracepoint events | Date | Mon, 17 Oct 2022 23:38:09 +0000 |
| |
On Wed, 12 Oct 2022 15:38:57 +0100 James Clark <james.clark@arm.com> wrote:
> Since commit 838d9bb62d13 ("perf: Use sample_flags for raw_data") > raw data is not being output on tracepoints due to the PERF_SAMPLE_RAW > field not being set. Fix this by setting it for tracepoint events.
I was also getting similar issue[1], and confirmed that this fixes it. Thank you for the fix! Also, thank you for pointing me to this patch, Namhyung!
> > This fixes the following test failure: > > perf test "sched_switch" -vvv > > 35: Track with sched_switch > --- start --- > test child forked, pid 1828 > ... > Using CPUID 0x00000000410fd400 > sched_switch: cpu: 2 prev_tid -14687 next_tid 0 > sched_switch: cpu: 2 prev_tid -14687 next_tid 0 > Missing sched_switch events > 4613 events recorded > test child finished with -1 > ---- end ---- > Track with sched_switch: FAILED! > > Fixes: 838d9bb62d13 ("perf: Use sample_flags for raw_data") > Cc: Namhyung Kim <namhyung@kernel.org> > Cc: Peter Zijlstra (Intel) <peterz@infradead.org> > Signed-off-by: James Clark <james.clark@arm.com>
Tested-by: SeongJae Park <sj@kernel.org>
[1] https://lore.kernel.org/bpf/20221017192744.1403-1-sj@kernel.org/
Thanks, SJ
> --- > kernel/events/core.c | 1 + > 1 file changed, 1 insertion(+) > > diff --git a/kernel/events/core.c b/kernel/events/core.c > index b981b879bcd8..824c23830272 100644 > --- a/kernel/events/core.c > +++ b/kernel/events/core.c > @@ -9759,6 +9759,7 @@ void perf_tp_event(u16 event_type, u64 count, void *record, int entry_size, > > perf_sample_data_init(&data, 0, 0); > data.raw = &raw; > + data.sample_flags |= PERF_SAMPLE_RAW; > > perf_trace_buf_update(record, event_type); > > -- > 2.28.0
| |