linux/drivers/net
Vladimir Oltean f9cef64fa2 net: dsa: felix: migrate host FDB and MDB entries when changing tag proto
The "ocelot" and "ocelot-8021q" tagging protocols make use of different
hardware resources, and host FDB entries have different destination
ports in the switch analyzer module, practically speaking.

So when the user requests a tagging protocol change, the driver must
migrate all host FDB and MDB entries from the NPI port (in fact CPU port
module) towards the same physical port, but this time used as a regular
port.

It is pointless for the felix driver to keep a copy of the host
addresses, when we can create and export DSA helpers for walking through
the addresses that it already needs to keep on the CPU port, for
refcounting purposes.

felix_classify_db() is moved up to avoid a forward declaration.

We pass "bool change" because dp->fdbs and dp->mdbs are uninitialized
lists when felix_setup() first calls felix_set_tag_protocol(), so we
need to avoid calling dsa_port_walk_fdbs() during probe time.

Signed-off-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2022-03-03 14:15:31 +00:00
..
appletalk
arcnet
bonding bonding: add new option ns_ip6_target 2022-02-21 12:13:45 +00:00
caif
can spi: Make remove() return void 2022-02-28 10:43:07 -08:00
dsa net: dsa: felix: migrate host FDB and MDB entries when changing tag proto 2022-03-03 14:15:31 +00:00
ethernet ice: add TTY for GNSS module for E810T device 2022-03-03 14:11:00 +00:00
fddi
fjes
hamradio net: hamradio: fix compliation error 2022-03-02 09:47:38 -08:00
hippi
hyperv
ieee802154 spi: Make remove() return void 2022-02-28 10:43:07 -08:00
ipa
ipvlan
mctp mctp i2c: Fix hard head TX bounds length check 2022-02-25 22:23:33 -08:00
mdio Merge git://git.kernel.org/pub/scm/linux/kernel/git/netdev/net 2022-02-24 17:54:25 -08:00
netdevsim ipv6: fix data-race in fib6_info_hw_flags_set / fib6_purge_rt 2022-02-17 09:48:24 -08:00
pcs
phy net: sfp: use %pe for printing errors 2022-03-02 22:03:34 -08:00
plip
ppp
slip
team teaming: deliver link-local packets with the link they arrive on 2022-02-18 11:40:52 +00:00
usb net: asix: remove code duplicates in asix_mdio_read/write and asix_mdio_read/write_nopm 2022-02-24 21:21:30 -08:00
vmxnet3
vxlan drivers: vxlan: vnifilter: add support for stats dumping 2022-03-01 08:38:02 +00:00
wan spi: Make remove() return void 2022-02-28 10:43:07 -08:00
wireguard
wireless spi: Make remove() return void 2022-02-28 10:43:07 -08:00
wwan
xen-netback Revert "xen-netback: Check for hotplug-status existence before watching" 2022-02-24 08:58:37 -08:00
amt.c
bareudp.c
dummy.c
eql.c
geneve.c
gtp.c
ifb.c
Kconfig
LICENSE.SRC
loopback.c
macsec.c
macvlan.c
macvtap.c macvtap: advertise link netns via netlink 2022-03-01 17:59:28 -08:00
Makefile vxlan: move to its own directory 2022-03-01 08:38:01 +00:00
mdio.c
mhi_net.c
mii.c
net_failover.c
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c
sb1000.c
Space.c
sungem_phy.c
tap.c tuntap: add sanity checks about msg_controllen in sendmsg 2022-03-02 22:00:59 -08:00
thunderbolt.c
tun.c tuntap: add sanity checks about msg_controllen in sendmsg 2022-03-02 22:00:59 -08:00
veth.c
virtio_net.c
vrf.c
vsockmon.c
xen-netfront.c