From: Vladimir Oltean <[email protected]>
This is my second stab at creating a list of unicast and multicast
addresses that the DSA CPU port must trap. I am reusing a lot of
Tobias's work which he submitted here:
https://patchwork.kernel.org/project/netdevbpf/cover/[email protected]/
I did not yet have the guts to disable flooding towards the CPU port,
but if feedback for the approach taken here is positive, that will be
next.
Tobias Waldekranz (6):
net: bridge: switchdev: refactor br_switchdev_fdb_notify
net: bridge: switchdev: include local flag in FDB notifications
net: bridge: switchdev: send FDB notifications for host addresses
net: dsa: include bridge addresses which are local in the host fdb
list
net: dsa: sync static FDB entries on foreign interfaces to hardware
net: dsa: mv88e6xxx: Request assisted learning on CPU port
Vladimir Oltean (11):
net: dsa: reference count the host mdb addresses
net: dsa: reference count the host fdb addresses
net: dsa: install the host MDB and FDB entries in the master's RX
filter
net: dsa: install the port MAC addresses as host fdb entries
net: bridge: implement unicast filtering for the bridge device
net: dsa: add addresses obtained from RX filtering to host addresses
net: dsa: include fdb entries pointing to bridge in the host fdb list
net: dsa: replay port and host-joined mdb entries when joining the
bridge
net: dsa: replay port and local fdb entries when joining the bridge
net: bridge: switchdev: let drivers inform which bridge ports are
offloaded
net: bridge: offloaded ports are always promiscuous
drivers/net/dsa/mv88e6xxx/chip.c | 1 +
.../marvell/prestera/prestera_switchdev.c | 4 +-
.../mellanox/mlxsw/spectrum_switchdev.c | 7 +-
drivers/net/ethernet/mscc/ocelot_net.c | 43 +-
drivers/net/ethernet/rocker/rocker_main.c | 4 +-
drivers/net/ethernet/rocker/rocker_ofdpa.c | 2 +
drivers/net/ethernet/ti/am65-cpsw-nuss.c | 2 +
drivers/net/ethernet/ti/am65-cpsw-switchdev.c | 4 +-
drivers/net/ethernet/ti/cpsw_new.c | 1 +
drivers/net/ethernet/ti/cpsw_switchdev.c | 4 +-
drivers/staging/fsl-dpaa2/ethsw/ethsw.c | 6 +-
include/linux/if_bridge.h | 18 +
include/net/dsa.h | 35 ++
include/net/switchdev.h | 19 +
net/bridge/br.c | 8 +-
net/bridge/br_device.c | 23 +-
net/bridge/br_fdb.c | 57 +-
net/bridge/br_if.c | 19 +-
net/bridge/br_mdb.c | 117 ++++
net/bridge/br_private.h | 14 +-
net/bridge/br_switchdev.c | 74 +--
net/dsa/dsa2.c | 30 +-
net/dsa/dsa_priv.h | 23 +-
net/dsa/port.c | 51 ++
net/dsa/slave.c | 589 ++++++++++++++----
net/dsa/switch.c | 123 +++-
net/switchdev/switchdev.c | 18 +
27 files changed, 1047 insertions(+), 249 deletions(-)
--
2.25.1