From: Vincent Donnefort <vdonnefort@google.com>
To: rostedt@goodmis.org, mhiramat@kernel.org,
linux-trace-kernel@vger.kernel.org
Cc: mathieu.desnoyers@efficios.com, kernel-team@android.com,
linux-kernel@vger.kernel.org
Subject: Re: [PATCH v1] ring-buffer: Rename ring_buffer_size() to ring_buffer_capacity()
Date: Mon, 7 Sep 2026 10:44:07 +0100 [thread overview]
Message-ID: <ap6HZzXJIzZhbHTi@google.com> (raw)
In-Reply-To: <20260907094238.3624013-1-vdonnefort@google.com>
On Mon, Sep 07, 2026 at 10:42:38AM +0100, Vincent Donnefort 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.
>
> Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
>
> diff --git a/include/linux/ring_buffer.h b/include/linux/ring_buffer.h
> index afc7daa6ee7d..9e23ab66176b 100644
> --- a/include/linux/ring_buffer.h
> +++ b/include/linux/ring_buffer.h
> @@ -165,7 +165,7 @@ void ring_buffer_iter_reset(struct ring_buffer_iter *iter);
> int ring_buffer_iter_empty(struct ring_buffer_iter *iter);
> bool ring_buffer_iter_dropped(struct ring_buffer_iter *iter);
>
> -unsigned long ring_buffer_size(struct trace_buffer *buffer, int cpu);
> +unsigned long ring_buffer_capacity(struct trace_buffer *buffer, int cpu);
> unsigned long ring_buffer_max_event_size(struct trace_buffer *buffer);
>
> void ring_buffer_reset_cpu(struct trace_buffer *buffer, int cpu);
> diff --git a/kernel/trace/ring_buffer.c b/kernel/trace/ring_buffer.c
> index 9c03a555a6ba..2940ff763354 100644
> --- a/kernel/trace/ring_buffer.c
> +++ b/kernel/trace/ring_buffer.c
> @@ -6547,18 +6547,23 @@ void ring_buffer_iter_advance(struct ring_buffer_iter *iter)
> EXPORT_SYMBOL_GPL(ring_buffer_iter_advance);
>
> /**
> - * ring_buffer_size - return the size of the ring buffer (in bytes)
> + * ring_buffer_capacity - return the capacity of the ring buffer (in bytes)
> * @buffer: The ring buffer.
> - * @cpu: The CPU to get ring buffer size from.
> + * @cpu: The CPU to get ring buffer capacity from.
> + *
> + * Capacity is the total memory available for recording event data in the
> + * ring buffer. It excludes subbufer headers.
Of course, I manage to do a typo... "subbuffer"
--
Vincent
> + *
> + * Returns the capacity in bytes, or 0 if the CPU is not set in the buffer mask.
> */
> -unsigned long ring_buffer_size(struct trace_buffer *buffer, int cpu)
> +unsigned long ring_buffer_capacity(struct trace_buffer *buffer, int cpu)
> {
> if (!cpumask_test_cpu(cpu, buffer->cpumask))
> return 0;
>
> return rb_subbuf_capacity(buffer) * buffer->buffers[cpu]->nr_pages;
> }
> -EXPORT_SYMBOL_GPL(ring_buffer_size);
> +EXPORT_SYMBOL_GPL(ring_buffer_capacity);
>
> /**
> * ring_buffer_max_event_size - return the max data size of an event
> 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);
> }
> }
>
> @@ -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
>
next prev parent reply other threads:[~2026-09-07 9:44 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-09-07 9:42 [PATCH v1] ring-buffer: Rename ring_buffer_size() to ring_buffer_capacity() Vincent Donnefort
2026-09-07 9:44 ` Vincent Donnefort [this message]
2026-09-07 9:51 ` sashiko-bot
2026-09-07 14:41 ` Masami Hiramatsu
2026-09-07 16:39 ` Vincent Donnefort
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ap6HZzXJIzZhbHTi@google.com \
--to=vdonnefort@google.com \
--cc=kernel-team@android.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-trace-kernel@vger.kernel.org \
--cc=mathieu.desnoyers@efficios.com \
--cc=mhiramat@kernel.org \
--cc=rostedt@goodmis.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.