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

From: Vlad Buslov <[email-masked]>
Date: Tue, 03 Nov 2020 17:07:24 +0200

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.