Subject: Re: [PATCH iproute2-next] tc: implement support for action terse dump

From: Vlad Buslov <[email-masked]>
Date: Fri, 06 Nov 2020 21:16:45 +0200

On Tue 03 Nov 2020 at 23:59, Jamal Hadi Salim <[email-masked]> wrote:
> On 2020-11-03 10:07 a.m., Vlad Buslov wrote:
>>
>> On Tue 03 Nov 2020 at 03:48, David Ahern <[email-masked]> wrote:
>>> On 10/31/20 2:25 PM, Vlad Buslov wrote:
>>>> diff --git a/include/uapi/linux/rtnetlink.h b/include/uapi/linux/rtnetlink.h
>>>> index 5ad84e663d01..b486f52900f0 100644
>>>> --- a/include/uapi/linux/rtnetlink.h
>>>> +++ b/include/uapi/linux/rtnetlink.h
>>>> @@ -768,8 +768,12 @@ enum {
>>>>    * actions in a dump. All dump responses will contain the number of actions
>>>>    * being dumped stored in for user app's consumption in TCA_ROOT_COUNT
>>>>    *
>>>> + * TCA_FLAG_TERSE_DUMP user->kernel to request terse (brief) dump that only
>>>> + * includes essential action info (kind, index, etc.)
>>>> + *
>>>>    */
>>>>   #define TCA_FLAG_LARGE_DUMP_ON		(1 << 0)
>>>> +#define TCA_FLAG_TERSE_DUMP		(1 << 1)
>>>>   
>>>
>>> there is an existing TCA_DUMP_FLAGS_TERSE. How does this differ and if
>>> it really is needed please make it different enough and documented to
>>> avoid confusion.
>>
>> TCA_FLAG_TERSE_DUMP is a bit in TCA_ROOT_FLAGS tlv which is basically
>> "action flags". TCA_DUMP_FLAGS_TERSE is a bit in TCA_DUMP_FLAGS tlv
>> which is dedicated flags attribute for filter dump. We can't just reuse
>> existing filter dump constant because its value "1" is already taken by
>> TCA_FLAG_LARGE_DUMP_ON. This might look confusing, but what do you
>> suggest? Those are two unrelated tlv's. I can rename the constant name
>> to TCA_FLAG_ACTION_TERSE_DUMP to signify that the flag is action
>> specific, but that would make the naming inconsistent with existing
>> TCA_FLAG_LARGE_DUMP_ON.
>>
>
> Its unfortunate that the TCA_ prefix ended being used for both filters
> and actions. Since we only have a couple of flags maybe it is not too
> late to have a prefix TCAA_ ? For existing flags something like a
> #define TCAA_FLAG_LARGE_DUMP_ON TCA_FLAG_LARGE_DUMP_ON
> in the uapi header will help. Of course that would be a separate
> patch which will require conversion code in both the kernel and user
> space.

I can send a followup patch, assuming David is satisfied with proposed
change.

>
> FWIW, the patch is good for what i tested. So even if you do send an
> update with a name change please add:
>
> Acked-by: Jamal Hadi Salim <[email-masked]>
>
> cheers,
> jamal