On 10/17/25 2:08 AM, Steven Rostedt wrote:
> 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.

For sure it is. Thanks for the explanation.
I'll see if I can come up with an alternative - or not.

> 
> 
>>
>> 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
> 

-- 
~Randy


Reply via email to