From: Petr Machata <petrm@mellanox.com>
To: David Ahern <dsahern@gmail.com>
Cc: Stephen Hemminger <stephen@networkplumber.org>, netdev@vger.kernel.org
Subject: Re: [PATCH iproute2-next 1/3] tc: p_ip6: Support pedit of IPv6 dsfield
Date: Thu, 02 Apr 2020 13:06:02 +0200 [thread overview]
Message-ID: <87wo6ydu5h.fsf@mellanox.com> (raw)
In-Reply-To: <0686d67a-84e8-dfab-7200-c67105420bcb@gmail.com>
David Ahern <dsahern@gmail.com> writes:
> On 3/30/20 2:32 AM, Petr Machata wrote:
>>
>> Stephen Hemminger <stephen@networkplumber.org> writes:
>>
>>>> diff --git a/tc/p_ip6.c b/tc/p_ip6.c
>>>> index 7cc7997b..b6fe81f5 100644
>>>> --- a/tc/p_ip6.c
>>>> +++ b/tc/p_ip6.c
>>>> @@ -56,6 +56,22 @@ parse_ip6(int *argc_p, char ***argv_p,
>>>> res = parse_cmd(&argc, &argv, 4, TU32, 0x0007ffff, sel, tkey);
>>>> goto done;
>>>> }
>>>> + if (strcmp(*argv, "traffic_class") == 0 ||
>>>> + strcmp(*argv, "tos") == 0 ||
>>>> + strcmp(*argv, "dsfield") == 0) {
>>>> + NEXT_ARG();
>>>> + tkey->off = 1;
>>>> + res = parse_cmd(&argc, &argv, 1, TU32, RU8, sel, tkey);
>>>> +
>>>> + /* Shift the field by 4 bits on success. */
>>>> + if (!res) {
>>>> + int nkeys = sel->sel.nkeys;
>>>> + struct tc_pedit_key *key = &sel->sel.keys[nkeys - 1];
>>>> + key->mask = htonl(ntohl(key->mask) << 4 | 0xf);
>>>> + key->val = htonl(ntohl(key->val) << 4);
>>>> + }
>>>> + goto done;
>>>> + }
>>> Why in the middle of the list?
>>
>> Because that's the order IPv4 code does them.
>
> neither parse function uses matches() so the order should not matter.
It was purely a consistency thing. So you both seem to imply I should
move it to the end, so I'll do that in v2.
>>
>>> Why three aliases for the same value?
>>> Since this is new code choose one and make it match what IPv6 standard
>>> calls that field.
>>
>> TOS because flower also calls it TOS, even if it's the IPv6 field.
>> dsfield, because the IPv4 pedit also accepts this. I'm fine with just
>> accepting traffic_class though.
>>
>
> that's probably the right thing to do since this is ipv6 related
All right, I'll send v2 with this fix.
next prev parent reply other threads:[~2020-04-02 11:06 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-27 17:55 [PATCH iproute2-next 0/3] Support pedit of ip6 dsfield Petr Machata
2020-03-27 17:55 ` [PATCH iproute2-next 1/3] tc: p_ip6: Support pedit of IPv6 dsfield Petr Machata
2020-03-28 0:51 ` Stephen Hemminger
2020-03-30 8:32 ` Petr Machata
2020-04-01 20:00 ` David Ahern
2020-04-02 11:06 ` Petr Machata [this message]
2020-03-27 17:55 ` [PATCH iproute2-next 2/3] man: tc-pedit: Add examples for dsfield and retain Petr Machata
2020-03-27 17:55 ` [PATCH iproute2-next 3/3] man: tc-pedit: Drop the claim that pedit ex is only for IPv4 Petr Machata
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=87wo6ydu5h.fsf@mellanox.com \
--to=petrm@mellanox.com \
--cc=dsahern@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=stephen@networkplumber.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).