Re: [RFC PATCH net-next 0/4] net: ethernet: ti: cpsw: fix vlan mcast

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 10/16/2018 01:20 PM, Ivan Khoronzhuk wrote:
The cpsw holds separate mcast entires for vlan entries. At this moment
driver adds only not vlan mcast addresses, omitting vlan/mcast entries.
As result mcast for vlans doesn't work. It can be fixed by adding same
mcast entries for every created vlan, but this patchseries uses more
sophisticated way and allows to create mcast entries only for vlans
that really require it. Generic functions from this series can be
reused for fixing vlan and macvlan unicast.

I assume this is first of all for dual_mac mode.


Simple example of ALE table before and after this series, having same
mcast entries as for vlan 100 as for real device (reserved vlan 2),
and one mcast address only for vlan 100 - 01:1b:19:00:00:00.

[...]

vlan , vid = 100, untag_force = 0x0, reg_mcast = 0x5, mem_list = 0x5
ucast, vid = 100, addr = 74:da:ea:47:7d:9d, persistant, port_num = 0x0
mcast, vid = 100, addr = ff:ff:ff:ff:ff:ff, port_mask = 0x1
mcast, vid = 100, addr = 33:33:00:00:00:01, port_mask = 0x1
mcast, vid = 100, addr = 01:00:5e:00:00:01, port_mask = 0x1
mcast, vid = 100, addr = 33:33:ff:47:7d:9d, port_mask = 0x1
mcast, vid = 100, addr = 01:80:c2:00:00:00, port_mask = 0x1
mcast, vid = 100, addr = 01:80:c2:00:00:03, port_mask = 0x1
mcast, vid = 100, addr = 01:80:c2:00:00:0e, port_mask = 0x1
mcast, vid = 100, addr = 33:33:00:00:00:fb, port_mask = 0x1
mcast, vid = 100, addr = 33:33:00:01:00:03, port_mask = 0x1
mcast, vid = 100, addr = 01:1b:19:00:00:00, port_mask = 0x1
			 ^^^
     Here mcast entry (ptpl2), is added only for vlan 100
     as it should be.

Based on net-next/master

Thank you.
For patches 2-4
Reviewed-by: Grygorii Strashko <grygorii.strashko@xxxxxx>

For patch 1 - I'm not sure, so it'd good to get more comments.


Ivan Khoronzhuk (4):
   net: core: dev_addr_lists: add auxiliary func to handle reference
     address updates
   net: 8021q: vlan_core: allow use list of vlans for real device
   net: ethernet: ti: cpsw: fix vlan mcast
   net: ethernet: ti: cpsw: fix vlan configuration while down/up

  drivers/net/ethernet/ti/cpsw.c | 189 +++++++++++++++++++++++++++------
  include/linux/if_vlan.h        |  10 ++
  include/linux/netdevice.h      |  10 ++
  net/8021q/vlan_core.c          |  27 +++++
  net/core/dev_addr_lists.c      |  97 +++++++++++++++++
  5 files changed, 303 insertions(+), 30 deletions(-)


--
regards,
-grygorii



[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux