lkml.org 
[lkml]   [2020]   [Oct]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Subject[PATCH net-next 0/7] VLAN improvements for Ocelot switch
Date
The main reason why I started this work is that deleting the bridge mdb
entries fails when the bridge is deleted, as described here:
https://lore.kernel.org/netdev/20201015173355.564934-1-vladimir.oltean@nxp.com/

In short, that happens because the bridge mdb entries are added with a
vid of 1, but deletion is attempted with a vid of 0. So the deletion
code fails to find the mdb entries.

The solution is to make ocelot use a pvid of 0 when it is under a bridge
with vlan_filtering 0. When vlan_filtering is 1, the pvid of the bridge
is what is programmed into the hardware.

The patch series also uncovers more bugs and does some more cleanup, but
the above is the main idea behind it.

Vladimir Oltean (7):
net: mscc: ocelot: use the pvid of zero when bridged with
vlan_filtering=0
net: mscc: ocelot: don't reset the pvid to 0 when deleting it
net: mscc: ocelot: transform the pvid and native vlan values into a
structure
net: mscc: ocelot: add a "valid" boolean to struct ocelot_vlan
net: mscc: ocelot: move the logic to drop 802.1p traffic to the pvid
deletion
net: mscc: ocelot: deny changing the native VLAN from the prepare
phase
net: dsa: felix: improve the workaround for multiple native VLANs on
NPI port

drivers/net/dsa/ocelot/felix.c | 27 ++++-
drivers/net/ethernet/mscc/ocelot.c | 147 +++++++++++++------------
drivers/net/ethernet/mscc/ocelot_net.c | 38 +++++--
include/soc/mscc/ocelot.h | 17 ++-
4 files changed, 138 insertions(+), 91 deletions(-)

--
2.25.1

\
 
 \ /
  Last update: 2020-10-31 11:30    [W:0.068 / U:2.212 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site