Re: [PATCH 3/5] perf/core: Account dropped samples from BPF

From: Kyle Huey
Date: Thu Sep 05 2024 - 00:17:45 EST


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