From: Ido Schimmel <idosch@idosch•org>
To: David Ahern <dsa@cumulusnetworks•com>
Cc: Chas Williams <3chas3@gmail•com>,
davem@davemloft•net, netdev@vger•kernel.org,
Roopa Prabhu <roopa@cumulusnetworks•com>,
Ido Schimmel <idosch@mellanox•com>
Subject: Re: [PATCH v3,net-next] vlan: implement vlan id and protocol changes
Date: Tue, 26 Jun 2018 13:32:16 +0300 [thread overview]
Message-ID: <20180626103216.GA11722@splinter.mtl.com> (raw)
In-Reply-To: <c39f97c6-7ae2-e66f-2226-acbe5c1352d2@cumulusnetworks.com>
On Mon, Jun 25, 2018 at 02:45:24PM -0600, David Ahern wrote:
> On 6/25/18 4:30 AM, Chas Williams wrote:
> > vlan_changelink silently ignores attempts to change the vlan id
> > or protocol id of an existing vlan interface. Implement by adding
> > the new vlan id and protocol to the interface's vlan group and then
> > removing the old vlan id and protocol from the vlan group.
> >
> > Signed-off-by: Chas Williams <3chas3@gmail•com>
> > ---
> > include/linux/netdevice.h | 1 +
> > net/8021q/vlan.c | 4 ++--
> > net/8021q/vlan.h | 2 ++
> > net/8021q/vlan_netlink.c | 38 ++++++++++++++++++++++++++++++++++++++
> > net/core/dev.c | 1 +
> > 5 files changed, 44 insertions(+), 2 deletions(-)
> >
> > diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h
> > index 3ec9850c7936..a95ae238addf 100644
> > --- a/include/linux/netdevice.h
> > +++ b/include/linux/netdevice.h
> > @@ -2409,6 +2409,7 @@ enum netdev_cmd {
> > NETDEV_CVLAN_FILTER_DROP_INFO,
> > NETDEV_SVLAN_FILTER_PUSH_INFO,
> > NETDEV_SVLAN_FILTER_DROP_INFO,
> > + NETDEV_CHANGEVLAN,
> > };
> > const char *netdev_cmd_to_name(enum netdev_cmd cmd);
> >
>
> you add the new notifier, but do not add any hooks to catch and process it.
>
> Personally, I think it is a bit sketchy to change the vlan id on an
> existing device and I suspect it will cause latent errors.
+1
>
> What's your use case for trying to implement the change versus causing
> it to generate an unsupported error?
>
> If this patch does get accepted, I believe the mlxsw switchdev driver
> will be impacted.
Yes, at minimum we need to return an error for NETDEV_CHANGEVLAN, but
looking at the code it seems that there's no proper rollback.
Thanks for the Cc, David.
next prev parent reply other threads:[~2018-06-26 10:32 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-06-10 23:19 [PATCH net-next] vlan: implement vlan id and protocol changes Chas Williams
2018-06-11 0:15 ` kbuild test robot
2018-06-11 23:44 ` [PATCH v2 " Chas Williams
2018-06-25 10:30 ` [PATCH v3,net-next] " Chas Williams
2018-06-25 20:45 ` David Ahern
2018-06-26 10:32 ` Ido Schimmel [this message]
[not found] ` <CAG2-GkmUJCc2bvOpaXsnUsEeJCLjWeYrs4Xe2kF_9M48FMRTzA@mail.gmail.com>
2018-06-26 15:29 ` Ido Schimmel
[not found] ` <CAG2-Gkm0u3Od64nAMpUzq+=M+cj3VS0J1VQ8L5BChbo7vig+kA@mail.gmail.com>
2018-06-26 15:57 ` Ido Schimmel
2018-07-02 22:35 ` [PATCH v4,net-next] " Chas Williams
2018-07-07 11:11 ` David Miller
2018-07-07 13:14 ` Ido Schimmel
2018-07-08 1:23 ` David Ahern
2018-07-08 1:47 ` David Miller
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=20180626103216.GA11722@splinter.mtl.com \
--to=idosch@idosch$(echo .)org \
--cc=3chas3@gmail$(echo .)com \
--cc=davem@davemloft$(echo .)net \
--cc=dsa@cumulusnetworks$(echo .)com \
--cc=idosch@mellanox$(echo .)com \
--cc=netdev@vger$(echo .)kernel.org \
--cc=roopa@cumulusnetworks$(echo .)com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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