On Wed, Sep 4, 2024 at 8:10 PM Namhyung Kim <namhyung@xxxxxxxxxx> wrote: > > Like in the software events, the BPF overflow handler can drop samples > by returning 0. Let's count the dropped samples here too. > > Cc: Alexei Starovoitov <ast@xxxxxxxxxx> > Cc: Andrii Nakryiko <andrii@xxxxxxxxxx> > Cc: Song Liu <song@xxxxxxxxxx> > Cc: Kyle Huey <me@xxxxxxxxxxxx> > Cc: bpf@xxxxxxxxxxxxxxx > Signed-off-by: Namhyung Kim <namhyung@xxxxxxxxxx> > --- > kernel/events/core.c | 4 +++- > 1 file changed, 3 insertions(+), 1 deletion(-) > > diff --git a/kernel/events/core.c b/kernel/events/core.c > index 8250e76f63358689..ba1f6b51ea26db5b 100644 > --- a/kernel/events/core.c > +++ b/kernel/events/core.c > @@ -9808,8 +9808,10 @@ static int __perf_event_overflow(struct perf_event *event, > > ret = __perf_event_account_interrupt(event, throttle); > > - if (event->prog && !bpf_overflow_handler(event, data, regs)) > + if (event->prog && !bpf_overflow_handler(event, data, regs)) { > + atomic64_inc(&event->dropped_samples); > return ret; > + } > > /* > * XXX event_limit might not quite work as expected on inherited > -- > 2.46.0.469.g59c65b2a67-goog > lgtm - Kyle