diff mbox series

[iproute2,1/1] tc: distinguish Add/Replace qdisc operations

Message ID 1509053408-18007-1-git-send-email-mrv@mojatatu.com
State Accepted, archived
Delegated to: stephen hemminger
Headers show
Series [iproute2,1/1] tc: distinguish Add/Replace qdisc operations | expand

Commit Message

Roman Mashak Oct. 26, 2017, 9:30 p.m. UTC
Signed-off-by: Roman Mashak <mrv@mojatatu.com>
---
 tc/tc_qdisc.c | 10 ++++++++++
 1 file changed, 10 insertions(+)

Comments

Stephen Hemminger Oct. 27, 2017, 7:36 a.m. UTC | #1
On Thu, 26 Oct 2017 17:30:08 -0400
Roman Mashak <mrv@mojatatu.com> wrote:

> Signed-off-by: Roman Mashak <mrv@mojatatu.com>
> ---
>  tc/tc_qdisc.c | 10 ++++++++++
>  1 file changed, 10 insertions(+)
> 
> diff --git a/tc/tc_qdisc.c b/tc/tc_qdisc.c
> index 1e9d909..493538c 100644
> --- a/tc/tc_qdisc.c
> +++ b/tc/tc_qdisc.c
> @@ -231,6 +231,16 @@ int print_qdisc(const struct sockaddr_nl *who,
>  	if (n->nlmsg_type == RTM_DELQDISC)
>  		fprintf(fp, "deleted ");
>  
> +	if (n->nlmsg_type == RTM_NEWQDISC &&
> +			(n->nlmsg_flags & NLM_F_CREATE) &&
> +			(n->nlmsg_flags & NLM_F_REPLACE))
> +		fprintf(fp, "replaced ");
> +
> +	if (n->nlmsg_type == RTM_NEWQDISC &&
> +			(n->nlmsg_flags & NLM_F_CREATE) &&
> +			(n->nlmsg_flags & NLM_F_EXCL))
> +		fprintf(fp, "added ");
> +
>  	if (show_raw)
>  		fprintf(fp, "qdisc %s %x:[%08x]  ",
>  			rta_getattr_str(tb[TCA_KIND]),

I am not sure about this. We don't do this for monitoring routes or addresses.
Roman Mashak Oct. 27, 2017, 2:02 p.m. UTC | #2
Stephen Hemminger <stephen@networkplumber.org> writes:

> On Thu, 26 Oct 2017 17:30:08 -0400
> Roman Mashak <mrv@mojatatu.com> wrote:
>
>> Signed-off-by: Roman Mashak <mrv@mojatatu.com>
>> ---
>>  tc/tc_qdisc.c | 10 ++++++++++
>>  1 file changed, 10 insertions(+)
>> 
>> diff --git a/tc/tc_qdisc.c b/tc/tc_qdisc.c
>> index 1e9d909..493538c 100644
>> --- a/tc/tc_qdisc.c
>> +++ b/tc/tc_qdisc.c
>> @@ -231,6 +231,16 @@ int print_qdisc(const struct sockaddr_nl *who,
>>  	if (n->nlmsg_type == RTM_DELQDISC)
>>  		fprintf(fp, "deleted ");
>>  
>> +	if (n->nlmsg_type == RTM_NEWQDISC &&
>> +			(n->nlmsg_flags & NLM_F_CREATE) &&
>> +			(n->nlmsg_flags & NLM_F_REPLACE))
>> +		fprintf(fp, "replaced ");
>> +
>> +	if (n->nlmsg_type == RTM_NEWQDISC &&
>> +			(n->nlmsg_flags & NLM_F_CREATE) &&
>> +			(n->nlmsg_flags & NLM_F_EXCL))
>> +		fprintf(fp, "added ");
>> +
>>  	if (show_raw)
>>  		fprintf(fp, "qdisc %s %x:[%08x]  ",
>>  			rta_getattr_str(tb[TCA_KIND]),
>
> I am not sure about this. We don't do this for monitoring routes or addresses.

However we already do this for other TC components - actions and
filters, e.g. print_action() or print_filter().
Stephen Hemminger Nov. 12, 2017, 11:59 p.m. UTC | #3
On Thu, 26 Oct 2017 17:30:08 -0400
Roman Mashak <mrv@mojatatu.com> wrote:

> Signed-off-by: Roman Mashak <mrv@mojatatu.com>
> ---
>  tc/tc_qdisc.c | 10 ++++++++++
>  1 file changed, 10 insertions(+)

Applied to 4.14
diff mbox series

Patch

diff --git a/tc/tc_qdisc.c b/tc/tc_qdisc.c
index 1e9d909..493538c 100644
--- a/tc/tc_qdisc.c
+++ b/tc/tc_qdisc.c
@@ -231,6 +231,16 @@  int print_qdisc(const struct sockaddr_nl *who,
 	if (n->nlmsg_type == RTM_DELQDISC)
 		fprintf(fp, "deleted ");
 
+	if (n->nlmsg_type == RTM_NEWQDISC &&
+			(n->nlmsg_flags & NLM_F_CREATE) &&
+			(n->nlmsg_flags & NLM_F_REPLACE))
+		fprintf(fp, "replaced ");
+
+	if (n->nlmsg_type == RTM_NEWQDISC &&
+			(n->nlmsg_flags & NLM_F_CREATE) &&
+			(n->nlmsg_flags & NLM_F_EXCL))
+		fprintf(fp, "added ");
+
 	if (show_raw)
 		fprintf(fp, "qdisc %s %x:[%08x]  ",
 			rta_getattr_str(tb[TCA_KIND]),