Re: [PATCH v1] ring-buffer: Rename ring_buffer_size() to ring_buffer_capacity()
From: Vincent Donnefort
Date: Mon Sep 07 2026 - 12:46:47 EST
On Mon, Sep 07, 2026 at 11:41:46PM +0900, Masami Hiramatsu wrote:
> On Mon, 7 Sep 2026 10:42:38 +0100
> Vincent Donnefort <vdonnefort@xxxxxxxxxx> wrote:
>
> > Since commit 8a5f63637890 ("ring-buffer: Fix subbuf resize race with ring
> > buffer readers"), "capacity" refers to the memory available for events
> > (excluding subbuffer headers) while "size" refers to the raw allocation.
> > ring_buffer_size() actually calculates this event capacity. Rename it to
> > ring_buffer_capacity() to align with this convention.
>
> I think this is OK, but I have a question.
>
> [...]
> > diff --git a/kernel/trace/trace.c b/kernel/trace/trace.c
> > index 8658cad53cb5..f0251788ec75 100644
> > --- a/kernel/trace/trace.c
> > +++ b/kernel/trace/trace.c
> > @@ -4712,9 +4712,9 @@ void trace_set_buffer_entries(struct array_buffer *buf, unsigned long val)
> > static void update_buffer_entries(struct array_buffer *buf, int cpu)
> > {
> > if (cpu == RING_BUFFER_ALL_CPUS) {
> > - trace_set_buffer_entries(buf, ring_buffer_size(buf->buffer, 0));
> > + trace_set_buffer_entries(buf, ring_buffer_capacity(buf->buffer, 0));
> > } else {
> > - per_cpu_ptr(buf->data, cpu)->entries = ring_buffer_size(buf->buffer, cpu);
> > + per_cpu_ptr(buf->data, cpu)->entries = ring_buffer_capacity(buf->buffer, cpu);
>
> nit: Don't we need to re-word this "entries" with "capacity" too?
>
> Actually, this "entries" is a bit odd because
>
> - ring_buffer_entries() returns the number of events.
> - trace_set_buffer_entries() sets the buffer capacity in bytes.
>
> It seems we call it as "entries" historical reason, but now it becomes the
> source of confusion. Maybe we should change it too. (but in the separate patch)
>
> Thanks,
Yes, I believe you're right, this "entries" here seems only used for
buffer_size_kb, buffer_total_size_kb and resize_buffer_duplicate_size() so we
can probably use "capacity" there too, it'll be less confusing than "entries".
I'll respin a v2 with that additional patch. (and a fix to the typo)
--
Vincent
>
> > }
> > }
> >
> > @@ -8476,7 +8476,7 @@ int allocate_trace_buffer(struct trace_array *tr, struct array_buffer *buf, int
> >
> > /* Allocate the first page for all buffers */
> > trace_set_buffer_entries(&tr->array_buffer,
> > - ring_buffer_size(tr->array_buffer.buffer, 0));
> > + ring_buffer_capacity(tr->array_buffer.buffer, 0));
> >
> > return 0;
> > }
> >
> > base-commit: df2908090cda368b01ff43709f51890076c56157
> > --
> > 2.55.0.979.g7e5102b832-goog
> >
>
>
> --
> Masami Hiramatsu (Google) <mhiramat@xxxxxxxxxx>