linux_dsm_epyc7002/drivers/net
Tristram Ha 962ad710f7 net: dsa: microchip: fix unicast frame leak
Port partitioning is done by enabling UNICAST_VLAN_BOUNDARY and changing
the default port membership of 0x7f to other values such that there is
no communication between ports.  In KSZ9477 the member for port 1 is
0x41; port 2, 0x42; port 3, 0x44; port 4, 0x48; port 5, 0x50; and port 7,
0x60.  Port 6 is the host port.

Setting a zero value can be used to stop port from receiving.

However, when UNICAST_VLAN_BOUNDARY is disabled and the unicast addresses
are already learned in the dynamic MAC table, setting zero still allows
devices connected to those ports to communicate.  This does not apply to
multicast and broadcast addresses though.  To prevent these leaks and
make the function of port membership consistent UNICAST_VLAN_BOUNDARY
should never be disabled.

Note that UNICAST_VLAN_BOUNDARY is enabled by default in KSZ9477.

Fixes: b987e98e50 ("dsa: add DSA switch driver for Microchip KSZ9477")
Signed-off-by: Tristram Ha <Tristram.Ha@microchip.com>
Reviewed-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
2018-12-20 16:19:29 -08:00
..
appletalk
arcnet
bonding bonding: fix indentation issues, remove extra spaces 2018-12-18 15:01:23 -08:00
caif
can can: flexcan: split the Message Buffer RAM area 2018-11-28 16:52:25 +01:00
dsa net: dsa: microchip: fix unicast frame leak 2018-12-20 16:19:29 -08:00
ethernet mlx5-updates-2018-12-19 2018-12-20 15:51:55 -08:00
fddi
fjes fjes: convert to DEFINE_SHOW_ATTRIBUTE 2018-12-10 12:05:20 -08:00
hamradio hamradio, ppp: change semaphore to completion 2018-12-14 13:27:10 -08:00
hippi
hyperv net: dev: Add extack argument to dev_set_mac_address() 2018-12-13 18:41:38 -08:00
ieee802154 Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-20 11:53:36 -08:00
ipvlan net: ipvlan: Issue NETDEV_PRE_CHANGEADDR 2018-12-13 18:41:38 -08:00
netdevsim drivers: net: netdevsim: use skb_sec_path helper 2018-12-19 11:21:37 -08:00
phy Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-20 11:53:36 -08:00
plip
ppp hamradio, ppp: change semaphore to completion 2018-12-14 13:27:10 -08:00
slip
team net: dev: Add extack argument to dev_set_mac_address() 2018-12-13 18:41:38 -08:00
usb Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-20 11:53:36 -08:00
vmxnet3
wan
wimax
wireless Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-20 11:53:36 -08:00
xen-netback net: xenbus: convert to DEFINE_SHOW_ATTRIBUTE 2018-12-10 12:05:20 -08:00
dummy.c
eql.c
geneve.c geneve: Initialize addr6 with memset 2018-11-17 22:03:06 -08:00
gtp.c
ifb.c
Kconfig net: documentation: build a directory structure for drivers 2018-12-05 11:30:06 -08:00
LICENSE.SRC
loopback.c
macsec.c
macvlan.c net: dev: Add extack argument to dev_set_mac_address() 2018-12-13 18:41:38 -08:00
macvtap.c
Makefile
mdio.c
mii.c
net_failover.c net: core: dev: Add extack argument to dev_open() 2018-12-06 13:26:06 -08:00
netconsole.c
nlmon.c
ntb_netdev.c
rionet.c rapidio/rionet: do not free skb before reading its length 2018-11-28 10:38:48 -08:00
sb1000.c
Space.c
sungem_phy.c
tap.c net: dev: Add extack argument to dev_set_mac_address() 2018-12-13 18:41:38 -08:00
thunderbolt.c
tun.c tun: replace get_cpu_ptr with this_cpu_ptr when bh disabled 2018-12-14 13:36:26 -08:00
veth.c
virtio_net.c virtio-net: keep vnet header zeroed after processing XDP 2018-11-30 17:25:03 -08:00
vrf.c net: core: dev: Add extack argument to dev_change_flags() 2018-12-06 13:26:07 -08:00
vsockmon.c
vxlan.c vxlan: Correct merge error. 2018-12-20 16:14:22 -08:00
xen-netfront.c Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net 2018-12-20 11:53:36 -08:00