On Fri, 17 Oct 2025 00:07:53 -0700
Randy Dunlap <[email protected]> wrote:
> Format the kernel-doc for RINGBUF_TYPE_DATA_TYPE_LEN_MAX correctly
> to prevent a kernel-doc warning:
>
> Warning: include/linux/ring_buffer.h:61 Enum value
> 'RINGBUF_TYPE_DATA_TYPE_LEN_MAX' not described in enum 'ring_buffer_type'
Then this needs to be updated differently, because that "<=" is stating
what happens when the value is <= RINGBUF_TYPE_DATA_TYPE_LEN_MAX.
It wasn't random characters.
Basically, the enum describes the event type.
enum ring_buffer_type {
RINGBUF_TYPE_DATA_TYPE_LEN_MAX = 28,
RINGBUF_TYPE_PADDING,
RINGBUF_TYPE_TIME_EXTEND,
RINGBUF_TYPE_TIME_STAMP,
};
When the type is > 28 it is either a padding, time-extend or
time-stamp. But if it is less than or equal to
RINGBUF_TYPE_DATA_TYPE_LEN_MAX then it is the length of a data event.
Perhaps we should have it be:
* 0:
* Data record
* array[0] holds the actual length
* array[1..(length+3)/4] holds data
* size = 4 + length (bytes)
*
* 1 - @RINGBUF_TYPE_DATA_TYPE_LEN_MAX:
* Data record
* length = type_len << 2
* array[0..(length+3)/4-1] holds data
* size = 4 + length (bytes)
?
This data is more important that making kerneldoc work.
-- Steve
>
> Fixes: 334d4169a659 ("ring_buffer: compressed event header")
> Signed-off-by: Randy Dunlap <[email protected]>
> ---
> Cc: Lai Jiangshan <[email protected]>
> Cc: Steven Rostedt <[email protected]>
> Cc: Masami Hiramatsu <[email protected]>
> Cc: Mathieu Desnoyers <[email protected]>
> Cc: [email protected]
> ---
> include/linux/ring_buffer.h | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- linux-next-20251016.orig/include/linux/ring_buffer.h
> +++ linux-next-20251016/include/linux/ring_buffer.h
> @@ -43,7 +43,7 @@ struct ring_buffer_event {
> * array[0] = top (28 .. 59) bits
> * size = 8 bytes
> *
> - * <= @RINGBUF_TYPE_DATA_TYPE_LEN_MAX:
> + * @RINGBUF_TYPE_DATA_TYPE_LEN_MAX:
> * Data record
> * If type_len is zero:
> * array[0] holds the actual length