From: Ido Schimmel <idosch@idosch.org>
To: David Ahern <dsahern@gmail.com>
Cc: Jiri Pirko <jiri@resnulli.us>,
netdev@vger.kernel.org, davem@davemloft.net, idosch@mellanox.com,
mlxsw@mellanox.com
Subject: Re: [patch net-next] mlxsw: spectrum_switchdev: Allow port enslavement to a VLAN-unaware bridge
Date: Wed, 21 Feb 2018 21:25:35 +0200 [thread overview]
Message-ID: <20180221192535.GA15987@splinter.mtl.com> (raw)
In-Reply-To: <c0bf9f8d-e4e4-8246-51c8-af5db0774343@gmail.com>
On Wed, Feb 21, 2018 at 11:16:35AM -0700, David Ahern wrote:
> On 2/20/18 12:45 AM, Jiri Pirko wrote:
> > From: Ido Schimmel <idosch@mellanox.com>
> >
> > Up until now we only allowed VLAN devices to be put in a VLAN-unaware
> > bridge, but some users need the ability to enslave physical ports as
> > well.
> >
> > This is achieved by mapping the port and VID 1 to the bridge's vFID,
> > instead of the port and the VID used by the VLAN device.
> >
> > The above is valid because as long as the port is not enslaved to a
> > bridge, VID 1 is guaranteed to be configured as PVID and egress
> > untagged.
> >
> > Signed-off-by: Ido Schimmel <idosch@mellanox.com>
> > Signed-off-by: Jiri Pirko <jiri@mellanox.com>
> > ---
> > drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c | 12 +++++-------
> > 1 file changed, 5 insertions(+), 7 deletions(-)
> >
>
> Maybe I am missing something in the setup, but I am not getting
> host-to-host connectivity. I booted a switch with this patch, configured
> a bridge:
>
> # ip a sh dev br0
> 44: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state
> UP group default qlen 1000
> link/ether 7c:fe:90:e8:3a:79 brd ff:ff:ff:ff:ff:ff
> inet6 3000:1000:1000:1000::1/80 scope global
> valid_lft forever preferred_lft forever
> inet6 fe80::7efe:90ff:fee8:3a79/64 scope link
> valid_lft forever preferred_lft forever
>
> Connected ports:
> # ip li sh master br0
> 36: swp1s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
> master br0 state UP mode DEFAULT group default qlen 1000
> link/ether 7c:fe:90:e8:3a:7d brd ff:ff:ff:ff:ff:ff
> 37: swp1s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
> master br0 state UP mode DEFAULT group default qlen 1000
> link/ether 7c:fe:90:e8:3a:7e brd ff:ff:ff:ff:ff:ff
> 38: swp1s2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
> master br0 state UP mode DEFAULT group default qlen 1000
> link/ether 7c:fe:90:e8:3a:7f brd ff:ff:ff:ff:ff:ff
> 39: swp1s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
> master br0 state UP mode DEFAULT group default qlen 1000
> link/ether 7c:fe:90:e8:3a:80 brd ff:ff:ff:ff:ff:ff
> 40: swp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
> master br0 state UP mode DEFAULT group default qlen 1000
> link/ether 7c:fe:90:e8:3a:79 brd ff:ff:ff:ff:ff:ff
> 41: swp3s1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
> master br0 state UP mode DEFAULT group default qlen 1000
> link/ether 7c:fe:90:e8:3a:7a brd ff:ff:ff:ff:ff:ff
> 42: swp3s2: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
> master br0 state UP mode DEFAULT group default qlen 1000
> link/ether 7c:fe:90:e8:3a:7b brd ff:ff:ff:ff:ff:ff
> 43: swp3s3: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast
> master br0 state UP mode DEFAULT group default qlen 1000
> link/ether 7c:fe:90:e8:3a:7c brd ff:ff:ff:ff:ff:ff
>
> The switch can see the hosts:
> # net show lldp
>
> LocalPort Speed Mode RemotePort RemoteHost
> Summary
> ----------- ------- --------- ------------
> ------------------------------------- -----------------------
> eth0 1G Mgmt swp37
> pioneerMS16.mvlab.cumulusnetworks.com IP: 10.0.3.155/22(DHCP)
> swp1s0 10G Access/L2 swp1 host1
> Untagged: br0
> swp1s1 10G Access/L2 swp1 host2
> Untagged: br0
> swp1s2 10G Access/L2 swp1 host3
> Untagged: br0
> swp1s3 10G Access/L2 swp1 host4
> Untagged: br0
> swp3s0 10G Access/L2 swp1 host5
> Untagged: br0
> swp3s1 10G Access/L2 swp1 host6
> Untagged: br0
> swp3s2 10G Access/L2 swp1 host7
> Untagged: br0
> swp3s3 10G Access/L2 swp1 host8
> Untagged: br0
LLDP packets are trapped before L2 forwarding, which can explain why
LLDP works but forwarding doesn't.
>
> and can talk to the hosts:
> # ping6 ff02::2%br0
Can you try ff02::1 ?
> PING ff02::2%br0(ff02::2) 56 data bytes
> 64 bytes from fe80::7efe:90ff:fee8:3a79: icmp_seq=1 ttl=64 time=0.073 ms
> 64 bytes from fe80::202:ff:fe00:2: icmp_seq=1 ttl=64 time=0.661 ms (DUP!)
> 64 bytes from fe80::202:ff:fe00:5: icmp_seq=1 ttl=64 time=0.705 ms (DUP!)
> 64 bytes from fe80::202:ff:fe00:1: icmp_seq=1 ttl=64 time=0.720 ms (DUP!)
> 64 bytes from fe80::202:ff:fe00:3: icmp_seq=1 ttl=64 time=0.729 ms (DUP!)
> 64 bytes from fe80::202:ff:fe00:6: icmp_seq=1 ttl=64 time=0.739 ms (DUP!)
> 64 bytes from fe80::202:ff:fe00:4: icmp_seq=1 ttl=64 time=0.748 ms (DUP!)
> 64 bytes from fe80::202:ff:fe00:7: icmp_seq=1 ttl=64 time=0.757 ms (DUP!)
> 64 bytes from fe80::202:ff:fe00:8: icmp_seq=1 ttl=64 time=0.766 ms (DUP!)
>
> but the hosts can not talk to each other:
>
> cumulus@host3:~$ net show lldp
>
> LocalPort Speed Mode RemoteHost RemotePort
> --------- ----- ------------ ----------- ----------
> swp1 10G Interface/L3 mlx-2700-05 swp1s2
>
> cumulus@host3:~$ ping6 3000:1000:1000:1000::2
> PING 3000:1000:1000:1000::2(3000:1000:1000:1000::2) 56 data bytes
> ^C
> --- 3000:1000:1000:1000::2 ping statistics ---
> 3 packets transmitted, 0 received, 100% packet loss, time 1999ms
Can you please try
# brctl showstp br0
To make sure STP state is set to forwarding?
Does it matter if you try IPv4 ping or if vlan_filtering is set 1?
Unfortunately, I can't reproduce on my switch.
Thanks for testing, David!
next prev parent reply other threads:[~2018-02-21 19:25 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-02-20 7:45 [patch net-next] mlxsw: spectrum_switchdev: Allow port enslavement to a VLAN-unaware bridge Jiri Pirko
2018-02-21 18:16 ` David Ahern
2018-02-21 19:25 ` Ido Schimmel [this message]
2018-02-21 19:41 ` David Ahern
2018-02-21 20:24 ` Ido Schimmel
2018-02-21 20:31 ` David Ahern
2018-02-22 18:58 ` David Miller
2018-02-22 19:27 ` David Ahern
2018-02-22 20:55 ` Ido Schimmel
2018-02-22 21:48 ` David Ahern
2018-02-26 6:54 ` Ido Schimmel
2018-02-26 16:12 ` David Miller
2018-02-26 16:08 ` David Ahern
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20180221192535.GA15987@splinter.mtl.com \
--to=idosch@idosch.org \
--cc=davem@davemloft.net \
--cc=dsahern@gmail.com \
--cc=idosch@mellanox.com \
--cc=jiri@resnulli.us \
--cc=mlxsw@mellanox.com \
--cc=netdev@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.