From: John Fastabend <john.fastabend@gmail.com>
To: Scott Feldman <sfeldma@gmail.com>, Jiri Pirko <jiri@resnulli.us>
Cc: Netdev <netdev@vger.kernel.org>,
"David S. Miller" <davem@davemloft.net>,
Ido Schimmel <idosch@mellanox.com>,
eladr@mellanox.com, Thomas Graf <tgraf@suug.ch>,
Alexei Starovoitov <ast@plumgrid.com>
Subject: Re: [patch net-next 09/14] rocker: add rtnl ops for port mode [gs]etting
Date: Mon, 05 Oct 2015 08:52:48 -0700 [thread overview]
Message-ID: <56129CD0.50301@gmail.com> (raw)
In-Reply-To: <CAE4R7bA6+_WUQ5BXD54zQK7DM64P3FS5D+TdUc1gcpbjd1+oZw@mail.gmail.com>
On 15-10-05 08:41 AM, Scott Feldman wrote:
> On Sun, Oct 4, 2015 at 2:25 PM, Jiri Pirko <jiri@resnulli.us> wrote:
>> From: Jiri Pirko <jiri@mellanox.com>
>>
>> Introduce a stub for allowing user to change rocker port world/mode.
>> This is implemented using rtnl changelink op.
>>
>> Signed-off-by: Jiri Pirko <jiri@mellanox.com>
>
> [cut]
>
>> diff --git a/include/uapi/linux/if_link.h b/include/uapi/linux/if_link.h
>> index 3a5f263..7da768e 100644
>> --- a/include/uapi/linux/if_link.h
>> +++ b/include/uapi/linux/if_link.h
>> @@ -416,6 +416,17 @@ enum {
>> };
>> #define IFLA_GENEVE_MAX (__IFLA_GENEVE_MAX - 1)
>>
>> +/* Rocker section */
>> +enum {
>> + IFLA_ROCKER_UNSPEC,
>> + IFLA_ROCKER_MODE,
>> + __IFLA_ROCKER_MAX,
>> +};
>> +
>> +#define IFLA_ROCKER_MAX (__IFLA_ROCKER_MAX - 1)
>> +
>> +#define ROCKER_MODE_MAX 16
>
> Does this mean there is going to be a "ip link set dev DEV type rocker
> mode MODE" command option?
>
> It doesn't seem right to be adding driver-specific IFLA_'s here. I
> think this sets bad precedence for other drivers to add their own
> knobs without thinking about a generic shared mechanism.
>
> Actually, I don't see the point of letting the user dynamically change
> the port mode. I would prefer this knob be moved to qemu/rocker. Let
> the port mode be specified on device creation.
>
I agree until we have the infrastructure to "understand" what these
knobs are fundamentally doing I would prefer it to stay in qemu/rocker.
I would rather see commands like "add a table", "remove a table", "add
header x to parser" where the operations are well defined. This lends
itself well to flexible devices that can be configured at runtime. At
least this fits more into my mental model of how we have been managing
these devices today. This would allow users to push the "worlds" into
the device to match their use cases e.g. add more l3 ipv4 rules vs l3
ipv6 rules etc.
> -scott
> --
> To unsubscribe from this list: send the line "unsubscribe netdev" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at http://vger.kernel.org/majordomo-info.html
>
next prev parent reply other threads:[~2015-10-05 15:53 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-10-04 21:25 [patch net-next 00/14] rocker: add support for multiple worlds Jiri Pirko
2015-10-04 21:25 ` [patch net-next 01/14] rocker: remove unused rocker_port param from alloc funcs and shorten their names Jiri Pirko
2015-10-04 21:25 ` [patch net-next 02/14] rocker: rename rocker.h to rocker_hw.h Jiri Pirko
2015-10-04 21:25 ` [patch net-next 03/14] rocker: rename rocker.c to rocker_main.c Jiri Pirko
2015-10-04 21:25 ` [patch net-next 04/14] rocker: push tlv processing into separate files Jiri Pirko
2015-10-04 21:25 ` [patch net-next 05/14] rocker: implement set settings mode command Jiri Pirko
2015-10-06 4:51 ` Scott Feldman
2015-10-04 21:25 ` [patch net-next 06/14] rocker: introduce worlds infrastructure Jiri Pirko
2015-10-04 21:25 ` [patch net-next 07/14] rocker: introduce OF-DPA world skeleton Jiri Pirko
2015-10-04 21:25 ` [patch net-next 08/14] rocker: set default world on port probe and clean world on remove Jiri Pirko
2015-10-04 21:25 ` [patch net-next 09/14] rocker: add rtnl ops for port mode [gs]etting Jiri Pirko
2015-10-05 15:41 ` Scott Feldman
2015-10-05 15:52 ` John Fastabend [this message]
2015-10-05 16:37 ` Jiri Pirko
2015-10-05 17:07 ` John Fastabend
2015-10-05 17:24 ` Jiri Pirko
2015-10-05 17:43 ` John Fastabend
2015-10-05 17:50 ` Jiri Pirko
2015-10-05 15:53 ` Jiri Pirko
2015-10-05 16:37 ` Scott Feldman
2015-10-05 16:50 ` Jiri Pirko
2015-10-05 17:00 ` Scott Feldman
2015-10-05 17:12 ` Jiri Pirko
2015-10-04 21:25 ` [patch net-next 10/14] rocker: pass "learning" value as a parameter to rocker_port_set_learning Jiri Pirko
2015-10-05 15:16 ` David Laight
2015-10-05 15:24 ` Jiri Pirko
2015-10-04 21:25 ` [patch net-next 11/14] rocker: pre-allocate wait structures during cmd ring init Jiri Pirko
2015-10-04 21:25 ` [patch net-next 12/14] rocker: remove trans parameter to rocker_cmd_exec function Jiri Pirko
2015-10-04 21:25 ` [patch net-next 13/14] rocker: call rocker_cmd_exec function with "nowait" boolean instead of flags Jiri Pirko
2015-10-04 21:25 ` [patch net-next 14/14] rocker: move OF-DPA stuff into separate file Jiri Pirko
2015-10-05 15:41 ` [patch net-next 00/14] rocker: add support for multiple worlds John Fastabend
2015-10-05 16:30 ` Jiri Pirko
2015-10-05 16:58 ` John Fastabend
2015-10-05 17:39 ` Jiri Pirko
2015-10-05 17:56 ` John Fastabend
2015-10-05 17:49 ` Scott Feldman
2015-10-06 7:34 ` John Fastabend
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=56129CD0.50301@gmail.com \
--to=john.fastabend@gmail.com \
--cc=ast@plumgrid.com \
--cc=davem@davemloft.net \
--cc=eladr@mellanox.com \
--cc=idosch@mellanox.com \
--cc=jiri@resnulli.us \
--cc=netdev@vger.kernel.org \
--cc=sfeldma@gmail.com \
--cc=tgraf@suug.ch \
/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).