Re: [RFC PATCH bpf-next] libbpf: remove sample_period init in perf_buffer

Namhyung Kim
2025-04-22T19:05:57Z

Hello,

On Tue, Apr 22, 2025 at 03:43:43PM +0200, Jiri Olsa wrote:
> On Tue, Apr 22, 2025 at 05:15:58PM +0800, Tao Chen wrote:
> > It seems that sample_period no used in perf buffer, actually only
> > wakeup_events valid about events aggregation for wakeup. So remove
> > it to avoid causing confusion.
>
> I don't see too much confusion in keeping it, but I think it
> should be safe to remove it
>
> PERF_COUNT_SW_BPF_OUTPUT is "trigered" by bpf_perf_event_output,
> AFAICS there's no path checking on sample_period for this event
> used in context of perf_buffer__new, Namhyung, thoughts?

It seems to be ok to call mmap(2) for non-sampling events.

Acked-by: Namhyung Kim <namhyung@kernel.org>

Thanks,
Namhyung

>
> >
> > Fixes: fb84b8224655 ("libbpf: add perf buffer API")
> > Signed-off-by: Tao Chen <chen.dylane@linux.dev>
> > ---
> > tools/lib/bpf/libbpf.c | 1 -
> > 1 file changed, 1 deletion(-)
> >
> > diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
> > index 194809da5172..1830e3c011a5 100644
> > --- a/tools/lib/bpf/libbpf.c
> > +++ b/tools/lib/bpf/libbpf.c
> > @@ -13306,7 +13306,6 @@ struct perf_buffer *perf_buffer__new(int map_fd, size_t page_cnt,
> > attr.config = PERF_COUNT_SW_BPF_OUTPUT;
> > attr.type = PERF_TYPE_SOFTWARE;
> > attr.sample_type = PERF_SAMPLE_RAW;
> > - attr.sample_period = sample_period;
> > attr.wakeup_events = sample_period;
> >
> > p.attr = &attr;
> > --
> > 2.43.0
> >