2023-12-29 17:23:20

by Steven Rostedt

[permalink] [raw]
Subject: [PATCH v3] ring-buffer/Documentation: Add documentation on buffer_percent file

From: "Steven Rostedt (Google)" <[email protected]>

When the buffer_percent file was added to the kernel, the documentation
should have been updated to document what that file does.

Acked-by: Masami Hiramatsu (Google) <[email protected]>
Fixes: 03329f9939781 ("tracing: Add tracefs file buffer_percentage")
Signed-off-by: Steven Rostedt (Google) <[email protected]>
---
Changes since v2: https://lore.kernel.org/linux-trace-kernel/[email protected]

- s/watermark/water-mark/ (Randy Dunlap)

- Added '::' and indented the number list so that it has better
formatting (kernel test robot)

Documentation/trace/ftrace.rst | 15 +++++++++++++++
1 file changed, 15 insertions(+)

diff --git a/Documentation/trace/ftrace.rst b/Documentation/trace/ftrace.rst
index 933e7efb9f1b..917501a2f348 100644
--- a/Documentation/trace/ftrace.rst
+++ b/Documentation/trace/ftrace.rst
@@ -180,6 +180,21 @@ of ftrace. Here is a list of some of the key files:
Only active when the file contains a number greater than 0.
(in microseconds)

+ buffer_percent:
+
+ This is the watermark for how much the ring buffer needs to be filled
+ before a waiter is woken up. That is, if an application calls a
+ blocking read syscall on one of the per_cpu trace_pipe_raw files, it
+ will block until the given amount of data specified by buffer_percent
+ is in the ring buffer before it wakes the reader up. This also
+ controls how the splice system calls are blocked on this file::
+
+ 0 - means to wake up as soon as there is any data in the ring buffer.
+ 50 - means to wake up when roughly half of the ring buffer sub-buffers
+ are full.
+ 100 - means to block until the ring buffer is totally full and is
+ about to start overwriting the older data.
+
buffer_size_kb:

This sets or displays the number of kilobytes each CPU
--
2.42.0



2023-12-31 04:39:35

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH v3] ring-buffer/Documentation: Add documentation on buffer_percent file



On 12/29/23 09:24, Steven Rostedt wrote:
> From: "Steven Rostedt (Google)" <[email protected]>
>
> When the buffer_percent file was added to the kernel, the documentation
> should have been updated to document what that file does.
>
> Acked-by: Masami Hiramatsu (Google) <[email protected]>
> Fixes: 03329f9939781 ("tracing: Add tracefs file buffer_percentage")
> Signed-off-by: Steven Rostedt (Google) <[email protected]>

LGTM. Thanks.
Acked-by: Randy Dunlap <[email protected]>

> ---
> Changes since v2: https://lore.kernel.org/linux-trace-kernel/[email protected]
>
> - s/watermark/water-mark/ (Randy Dunlap)

That comment is backwards. :)
No new patch needed IMO.

>
> - Added '::' and indented the number list so that it has better
> formatting (kernel test robot)
>
> Documentation/trace/ftrace.rst | 15 +++++++++++++++
> 1 file changed, 15 insertions(+)
>
> diff --git a/Documentation/trace/ftrace.rst b/Documentation/trace/ftrace.rst
> index 933e7efb9f1b..917501a2f348 100644
> --- a/Documentation/trace/ftrace.rst
> +++ b/Documentation/trace/ftrace.rst
> @@ -180,6 +180,21 @@ of ftrace. Here is a list of some of the key files:
> Only active when the file contains a number greater than 0.
> (in microseconds)
>
> + buffer_percent:
> +
> + This is the watermark for how much the ring buffer needs to be filled
> + before a waiter is woken up. That is, if an application calls a
> + blocking read syscall on one of the per_cpu trace_pipe_raw files, it
> + will block until the given amount of data specified by buffer_percent
> + is in the ring buffer before it wakes the reader up. This also
> + controls how the splice system calls are blocked on this file::
> +
> + 0 - means to wake up as soon as there is any data in the ring buffer.
> + 50 - means to wake up when roughly half of the ring buffer sub-buffers
> + are full.
> + 100 - means to block until the ring buffer is totally full and is
> + about to start overwriting the older data.
> +
> buffer_size_kb:
>
> This sets or displays the number of kilobytes each CPU

--
#Randy