On Thu, Jan 10, 2019 at 11:32:06AM -0800, Florian Fainelli wrote:
> This patch provides details on the expected behavior of switchdev
> enabled network devices when operating in a "stand alone" mode, as well
> as when being bridge members. This clarifies a number of things that
> recently came up
k_rcv_skb+0x152/0x3c0
[<8be8d614>] rtnetlink_rcv+0x21/0x30
[<9ab2ca25>] netlink_unicast+0x52f/0x740
[<e7d9ac96>] netlink_sendmsg+0x9c7/0xf50
[<5d1e2050>] sock_sendmsg+0xbe/0x120
[<0000d51426bc>] ___sys_sendmsg+0x778/0x8f0
On Thu, Jan 03, 2019 at 02:47:02PM -0800, Florian Fainelli wrote:
> +A switchdev driver can also refuse to support dynamic toggling of the VLAN
> +filtering knob at runtime and require a destruction of the bridge device(s)
> and
> +a creation of new bridge device(s) with a different VLAN
On Tue, Dec 18, 2018 at 12:13:38PM -0800, Florian Fainelli wrote:
> On 12/17/18 11:01 PM, Ido Schimmel wrote:
> > On Sun, Dec 16, 2018 at 09:14:09AM -0800, Florian Fainelli wrote:
> >> Le 12/16/18 à 12:25 AM, Ido Schimmel a écrit :
> >>> On Wed, Dec 12, 2018 at 03:0
On Sun, Dec 16, 2018 at 09:14:09AM -0800, Florian Fainelli wrote:
> Le 12/16/18 à 12:25 AM, Ido Schimmel a écrit :
> > On Wed, Dec 12, 2018 at 03:09:43PM -0800, Florian Fainelli wrote:
> >> +Non-bridged network ports of the same switch fabric must not be disturbed
> >&
On Wed, Dec 12, 2018 at 03:09:43PM -0800, Florian Fainelli wrote:
> This patch provides details on the expected behavior of switchdev
> enabled network devices when operating in a "stand alone" mode, as well
> as when being bridge members. This clarifies a number of things that
> recently came up
On Sat, Dec 15, 2018 at 10:10:32AM -0800, Florian Fainelli wrote:
> Le 12/12/18 à 1:02 AM, Ido Schimmel a écrit :
> > On Tue, Dec 11, 2018 at 11:48:21AM -0800, Florian Fainelli wrote:
> >> Hi Nikolay, Roopa, Jiri, Ido,
> >>
> >> When a bridge has vlan_filt
On Wed, Dec 12, 2018 at 11:52:08AM -0800, Florian Fainelli wrote:
> On 12/12/18 1:02 AM, Ido Schimmel wrote:
> > On Tue, Dec 11, 2018 at 11:48:21AM -0800, Florian Fainelli wrote:
> >> Hi Nikolay, Roopa, Jiri, Ido,
> >>
> >> When a bridge has vlan_filtering=0
On Tue, Dec 11, 2018 at 11:48:21AM -0800, Florian Fainelli wrote:
> Hi Nikolay, Roopa, Jiri, Ido,
>
> When a bridge has vlan_filtering=0 and notifies a switch driver through
> HOST_OBJ_MDB about MC addresses that the CPU/management port is
> interested in getting MC traffic for, I am seeing that
under different scenarios.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
.../selftests/drivers/net/mlxsw/vxlan.sh | 177 ++
1 file changed, 177 insertions(+)
diff --git a/tools/testing/selftests/drivers/net/mlxsw/vxlan.sh
b/tools/testing/selftests/drivers
ve packets from the VTEP.
Add a test case for above mentioned scenarios.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
.../net/forwarding/vxlan_bridge_1q.sh | 70 +++
1 file changed, 70 insertions(+)
diff --git a/tools/testing/selftests/net/
device as well as on its bridge master. An op to
handle this, fdb_clear_offload, has been added to FID ops and NVE ops in
previous patches. Add code to resolve the NVE device, NVE type, and
dispatch to both fdb_clear_offload ops.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
the operation for the 802.1q and 802.1d bridges.
Add and publish a function mlxsw_sp_fid_fdb_clear_offload() to dispatch
to the new operation according to FID type.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
.../net/ethernet/mellanox/mlxsw/spectrum.h| 2 ++
.../ethernet
currently supported
by mlxsw, VXLAN.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/ethernet/mellanox/mlxsw/spectrum_nve.h | 1 +
.../net/ethernet/mellanox/mlxsw/spectrum_nve_vxlan.c | 10 ++
2 files changed, 11 insertions(+)
diff --git a/drivers/net
by mlxsw, VXLAN.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/ethernet/mellanox/mlxsw/spectrum_nve.h | 1 +
.../net/ethernet/mellanox/mlxsw/spectrum_nve_vxlan.c | 10 ++
2 files changed, 11 insertions(+)
diff --git a/drivers/net/ethernet/mellanox/mlxsw
From: Petr Machata
The notifier block will need to be passed to vxlan_fdb_replay() in a
follow-up patch.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 1 +
drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c | 2
. Extend
mlxsw_sp_fid_vni_set() to take it as an argument, and add
mlxsw_sp_fid_nve_type().
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 13 -
.../net/ethernet/mellanox/mlxsw/spectrum_fid.c | 16 +++-
.../net
-by: Ido Schimmel
---
include/linux/if_bridge.h | 6 ++
net/bridge/br_fdb.c | 20
2 files changed, 26 insertions(+)
diff --git a/include/linux/if_bridge.h b/include/linux/if_bridge.h
index ef7c3d376b21..627b788ba0ff 100644
--- a/include/linux/if_bridge.h
+++ b
From: Petr Machata
When a driver unoffloads all FDB entries en bloc, it's inefficient to
send the switchdev notification one by one. Add a helper that walks the
FDB table, unsetting the offload flag on RDST with a given VNI.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers
with a given VNI.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 47 +
include/net/vxlan.h | 9 +
2 files changed, 56 insertions(+)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index d3db0313c97e
such function, vxlan_fdb_switchdev_notifier_info(), and call it from
vxlan_fdb_switchdev_call_notifiers() and vxlan_fdb_find_uc().
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 41 ++---
1 file changed, 18 insertions(+), 23 deletions
vxlan_fdb_switchdev_notifier_info() to initialize the
structure through a passed-in pointer argument, instead of returning
it as a value.
- Patch #2:
- Adapt to API change in vxlan_fdb_switchdev_notifier_info()
Ido Schimmel (1):
selftests: forwarding: Add PVID test case for VXLAN with VLAN-aware
bridges
under different scenarios.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
.../selftests/drivers/net/mlxsw/vxlan.sh | 177 ++
1 file changed, 177 insertions(+)
diff --git a/tools/testing/selftests/drivers/net/mlxsw/vxlan.sh
b/tools/testing/selftests/drivers
device as well as on its bridge master. An op to
handle this, fdb_clear_offload, has been added to FID ops and NVE ops in
previous patches. Add code to resolve the NVE device, NVE type, and
dispatch to both fdb_clear_offload ops.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
the operation for the 802.1q and 802.1d bridges.
Add and publish a function mlxsw_sp_fid_fdb_clear_offload() to dispatch
to the new operation according to FID type.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
.../net/ethernet/mellanox/mlxsw/spectrum.h| 2 ++
.../ethernet
currently supported
by mlxsw, VXLAN.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/ethernet/mellanox/mlxsw/spectrum_nve.h | 1 +
.../net/ethernet/mellanox/mlxsw/spectrum_nve_vxlan.c | 10 ++
2 files changed, 11 insertions(+)
diff --git a/drivers/net
ve packets from the VTEP.
Add a test case for above mentioned scenarios.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
.../net/forwarding/vxlan_bridge_1q.sh | 70 +++
1 file changed, 70 insertions(+)
diff --git a/tools/testing/selftests/net/
From: Petr Machata
When a driver unoffloads all FDB entries en bloc, it's inefficient to
send the switchdev notification one by one. Add a helper that walks the
FDB table, unsetting the offload flag on RDST with a given VNI.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers
From: Petr Machata
The notifier block will need to be passed to vxlan_fdb_replay() in a
follow-up patch.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 1 +
drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c | 2
with a given VNI.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 47 +
include/net/vxlan.h | 9 +
2 files changed, 56 insertions(+)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index fe5cd22e4b4d
by mlxsw, VXLAN.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/ethernet/mellanox/mlxsw/spectrum_nve.h | 1 +
.../net/ethernet/mellanox/mlxsw/spectrum_nve_vxlan.c | 10 ++
2 files changed, 11 insertions(+)
diff --git a/drivers/net/ethernet/mellanox/mlxsw
. Extend
mlxsw_sp_fid_vni_set() to take it as an argument, and add
mlxsw_sp_fid_nve_type().
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 13 -
.../net/ethernet/mellanox/mlxsw/spectrum_fid.c | 16 +++-
.../net
From: Petr Machata
When a driver unoffloads all FDB entries en bloc, it's inefficient to
send the switchdev notification one by one. Add a helper that unsets the
offload flag on FDB entries on a given bridge port and VLAN.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
include
the FDB management.
In patch #11, the mlxsw-specific test case is extended to check that the
management of offload marks under the newly-supported situations is
correct. Patch #12, from Ido, exercises the new code paths in actual
functional test.
Ido Schimmel (1):
selftests: forwarding: Add PVID test
such function, vxlan_fdb_switchdev_notifier_info(), and call it from
vxlan_fdb_switchdev_call_notifiers() and vxlan_fdb_find_uc().
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 45 ++---
1 file changed, 22 insertions(+), 23
Previous patches add the ability to work with VLAN-aware bridges and
VxLAN devices, so make sure such configuration no longer fails.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
tools/testing/selftests/drivers/net/mlxsw/vxlan.sh | 2 +-
1 file changed, 1 insertion(+), 1 deletion
bridges the FID would need to be resolved based on the
VLAN to which the VNI is mapped to.
Add the VLAN ID to the argument list of the function.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/spectrum.c | 4 ++--
drivers/net/ethernet/mellanox
N is added to / removed from a
VxLAN device of interest.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/ethernet/mellanox/mlxsw/spectrum.c| 45 ++-
.../net/ethernet/mellanox/mlxsw/spectrum.h| 21 ++
.../mellanox/mlxsw/spectrum_switchdev.c | 352 +
Extend the existing VLAN-unaware tests with their VLAN-aware
counterparts. This includes sanitization of invalid configuration and
offload indication on the local route performing decapsulation and the
FDB entries perform encapsulation.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
FDB entry is added
on the bridge port of the VxLAN device.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 2 ++
drivers/net/ethernet/mellanox/mlxsw/spectrum_fid.c | 6 ++
drivers/net/ethernet/mellanox/mlxsw/spectrum_s
the
FID differently for VLAN-aware and VLAN-unaware bridges, we can always
use the VxLAN's device VNI.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/ethernet/mellanox/mlxsw/spectrum.c| 4 +-
.../net/ethernet/mellanox/mlxsw/spectrum.h| 1 -
.../mellanox/mlxsw
Currently, the function only works for the bridge device itself, but
subsequent patches will need to be able to query the PVID of a given
bridge port, so extend the function.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
net/bridge/br_vlan.c | 6 +-
1 file changed, 5 insertions
VLAN-aware bridge.
Patches #6-#8 add selftests to test the new functionality.
Ido Schimmel (8):
net: bridge: Extend br_vlan_get_pvid() for bridge ports
mlxsw: spectrum_fid: Add API to lookup 802.1Q FIDs without creating
them
mlxsw: spectrum_switchdev: Unify VxLAN leave functi
Allow users to delete learned FDB entries from the bridge's FDB before
enabling VxLAN learning.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/spectrum_switchdev.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/drivers/net
Add a test which checks that the VxLAN driver can learn FDB entries and
that these entries are correctly deleted and aged-out.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/forwarding/vxlan_bridge_1d.sh | 108 ++
1 file changed, 108 insertions
The test currently expects that a configuration which includes a VxLAN
device with learning enabled to fail.
Previous patches enabled VxLAN learning in mlxsw, so change the test
accordingly.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
tools/testing/selftests/drivers/net/mlxsw
Up until now the driver returned an error when learning was enabled on a
VxLAN device enslaved to an offloaded bridge.
Previous patches added VxLAN learning support, so remove the check.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw
.
Only IPv4 underlay is currently supported, so we cannot receive
notifications for IPv6 addresses and therefore an error is returned when
one tries to resolve such an address.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 3
/ delete the entry to / from its database.
The driver also makes sure to notify the bridge and VxLAN drivers about
the new entry.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../mellanox/mlxsw/spectrum_switchdev.c | 203 --
1 file changed, 189 insertions
in the VxLAN and bridge drivers, the driver
needs to generate a notification and update them about the new FDB
entry.
Store the ifindex of the NVE device in the FID so that the driver will
be able to update the VxLAN and bridge drivers using it.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
.
These two parameters are stored in the FID, so add a new function that
allows looking up a FID based on its index.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/ethernet/mellanox/mlxsw/spectrum.h| 2 +
.../ethernet/mellanox/mlxsw/spectrum_fid.c| 42
Allow querying bridge port flags so that drivers capable of performing
VxLAN learning will update the bridge driver only if learning is enabled
on its bridge port corresponding to the VxLAN device.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
include/linux/if_bridge.h | 6
Will be used to process learned FDB records from an NVE tunnel.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/reg.h | 64 +++
1 file changed, 64 insertions(+)
diff --git a/drivers/net/ethernet/mellanox/mlxsw/reg.h
b/drivers
for a
simple selftest.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/vxlan.c | 10 ++
1 file changed, 6 insertions(+), 4 deletions(-)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index 03ba1b56ba6d..911066299a83 100644
--- a/drivers/net/vxlan.c
+++ b/drivers
an NTF_EXT_LEARNED flag, and only entries marked
as such can be unlearned by the _DEL_ event. They are also immediately
marked as offloaded. This is the same behavior that the bridge driver
observes.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 73
bits and add a new private
NTF flag to mark the user-added entries.
This seems preferable to adding a dedicated boolean, because passing the
flag, unlike passing e.g. a true, makes it clear what the meaning of the
bit is.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net
for these cases. This is in
accordance with the bridge behavior.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 26 +-
1 file changed, 17 insertions(+), 9 deletions(-)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
index 9171c1f42fe9
whether
the switchdev notifications should be sent. Propagate the argument to
all call sites transitively, eventually passing true in all root calls.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 71 ++---
1 file changed, 41
From: Petr Machata
This argument is necessary for vxlan_fdb_delete(), the API of which is
prescribed by ndo_fdb_del, but __vxlan_fdb_delete() doesn't need it.
Therefore drop it.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 7 +++
1 file changed, 3
and notified to the
bridge driver in case learning is disabled on the bridge port.
Next patches gradually add learning support in mlxsw.
The last patch adds a new test case for VxLAN learning.
Ido Schimmel (11):
vxlan: Allow changing ageing time
bridge: Allow querying bridge port flags
hitting the entry will only be
flooded by the kernel to remote VTEPs whereas the device will also flood
the packets to other local ports member in the VLAN.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../mellanox/mlxsw/spectrum_switchdev.c | 406 +-
1 file
, the driver makes sure to enable / disable these functionalities
based on NETDEV_PRE_UP and NETDEV_DOWN events.
Note that NETDEV_PRE_UP is used in favor of NETDEV_UP, as the former
allows to veto the operation, if necessary.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net
.
Therefore, bridge FDB entries pointing to a VxLAN device are only
offloaded if there is a corresponding entry in the VxLAN FDB.
Allow clearing the offload indication in case the corresponding entry
was deleted from the VxLAN FDB.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
the FDB entry
is removed as a whole.
Therefore send one notification for each remote of a removed FDB entry.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/vxlan.c b/drivers/net
mark them with
NTF_OFFLOADED.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 59 -
include/net/switchdev.h | 1 +
include/net/vxlan.h | 2 ++
3 files changed, 61 insertions(+), 1 deletion(-)
diff --git a/drivers/net
specifically UC FDBs: vxlan_fdb_find_uc().
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 40
include/net/vxlan.h | 12
2 files changed, 52 insertions(+)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
to configure the underlying device when a VxLAN netdev
is being enslaved to an offloaded bridge.
Convert nfp to use the newly introduced helper.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/netronome/nfp/flower/tunnel_conf.c | 3 ++-
include/net/vxlan.h
decap" where existing local routes were
promoted to perform NVE decapsulation.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/spectrum_router.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/drivers/net/ethernet/mell
destroying the FID make sure to disable its NVE
configuration.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/spectrum_fid.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_fid.c
b/drivers/net
initialization for this type.
Implement these operations for VxLAN on the Spectrum ASIC. Spectrum-2
support will be added by a future patchset.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../mellanox/mlxsw/spectrum_nve_vxlan.c | 190 +-
1 file changed, 188 insertions
the
device.
Signed-off-by: Ido Schimmel
Suggested-by: Petr Machata
Reviewed-by: Petr Machata
---
include/net/inet_ecn.h | 18 ++
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/include/net/inet_ecn.h b/include/net/inet_ecn.h
index 482a1b705362..c8e2bebd8d93 100644
the functions that perform such checks.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/vxlan.c | 26 --
include/net/vxlan.h | 32
2 files changed, 32 insertions(+), 26 deletions(-)
diff --git a/drivers/net/vxlan.c b
, but without creating it in order to catch
above-mentioned situation.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/ethernet/mellanox/mlxsw/spectrum.h| 4 ++
.../ethernet/mellanox/mlxsw/spectrum_fid.c| 45 ---
2 files changed, 44 insertions(+), 5
struct.
Since the device requires a 1:1 mapping between FID and VNI, the driver
maintains a hashtable keyed by VNI and checks if the VNI is already
associated with an existing FID.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/ethernet/mellanox/mlxsw/spectrum.h| 8
hitting the entry will only be
flooded by the kernel to remote VTEPs whereas the device will also flood
the packets to other local ports member in the VLAN.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../mellanox/mlxsw/spectrum_switchdev.c | 406 +-
1 file
, the driver makes sure to enable / disable these functionalities
based on NETDEV_PRE_UP and NETDEV_DOWN events.
Note that NETDEV_PRE_UP is used in favor of NETDEV_UP, as the former
allows to veto the operation, if necessary.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net
the FDB entry
is removed as a whole.
Therefore send one notification for each remote of a removed FDB entry.
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 5 -
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/drivers/net/vxlan.c b/drivers/net
.
Therefore, bridge FDB entries pointing to a VxLAN device are only
offloaded if there is a corresponding entry in the VxLAN FDB.
Allow clearing the offload indication in case the corresponding entry
was deleted from the VxLAN FDB.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
function from vxlan_fdb_notify().
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 46 +++--
include/net/switchdev.h | 3 +++
include/net/vxlan.h | 11 ++
3 files changed, 58 insertions(+), 2 deletions
specifically UC FDBs: vxlan_fdb_find_uc().
Signed-off-by: Petr Machata
Signed-off-by: Ido Schimmel
---
drivers/net/vxlan.c | 40
include/net/vxlan.h | 12
2 files changed, 52 insertions(+)
diff --git a/drivers/net/vxlan.c b/drivers/net/vxlan.c
initialization for this type.
Implement these operations for VxLAN on the Spectrum ASIC. Spectrum-2
support will be added by a future patchset.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../mellanox/mlxsw/spectrum_nve_vxlan.c | 190 +-
1 file changed, 188 insertions
destroying the FID make sure to disable its NVE
configuration.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/spectrum_fid.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/drivers/net/ethernet/mellanox/mlxsw/spectrum_fid.c
b/drivers/net
to configure the underlying device when a VxLAN netdev
is being enslaved to an offloaded bridge.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/vxlan.c | 1 +
include/linux/netdevice.h | 8
2 files changed, 9 insertions(+)
diff --git a/drivers/net/vxlan.c b
) and the addition of remote VTEPs to the
linked-list of VTEPs that traffic should be flooded to.
Implement this common core and allow different ASICs to register
different operations for different encapsulation types.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net
the
device.
Signed-off-by: Ido Schimmel
Suggested-by: Petr Machata
Reviewed-by: Petr Machata
---
include/net/inet_ecn.h | 18 ++
1 file changed, 14 insertions(+), 4 deletions(-)
diff --git a/include/net/inet_ecn.h b/include/net/inet_ecn.h
index 482a1b705362..c8e2bebd8d93 100644
the underlay VR where
VxLAN encapsulated packets will undergo an L3 lookup. In this case, the
kernel's table ID is derived from the VxLAN device's configuration.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/ethernet/mellanox/mlxsw/spectrum.h | 2 ++
.../net/ethernet
the functions that perform such checks.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
drivers/net/vxlan.c | 26 --
include/net/vxlan.h | 32
2 files changed, 32 insertions(+), 26 deletions(-)
diff --git a/drivers/net/vxlan.c b
of the NVE
tunnel will be handled in a subsequent patch in the set.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/ethernet/mellanox/mlxsw/spectrum.h| 7 ++
.../ethernet/mellanox/mlxsw/spectrum_router.c | 115 +-
2 files changed, 121 insertions(+), 1
allow capable drivers to get a notification
about the addition / deletion of FDB entries to / from the VxLAN's FDB.
Subsequent patchset will add selftests (generic and mlxsw-specific),
data plane learning, FDB extack and vetoing and support for VLAN-aware
bridges (one VNI per VxLAN device model).
Ido
, but without creating it in order to catch
above-mentioned situation.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/ethernet/mellanox/mlxsw/spectrum.h| 4 ++
.../ethernet/mellanox/mlxsw/spectrum_fid.c| 45 ---
2 files changed, 44 insertions(+), 5
struct.
Since the device requires a 1:1 mapping between FID and VNI, the driver
maintains a hashtable keyed by VNI and checks if the VNI is already
associated with an existing FID.
Signed-off-by: Ido Schimmel
Reviewed-by: Petr Machata
---
.../net/ethernet/mellanox/mlxsw/spectrum.h| 8
On Mon, Oct 01, 2018 at 08:54:08PM +0200, Richard Weinberger wrote:
> So the only option is having a bridge and transport STP via tc-mirred
> or patching the bridge code (what we do right now).
And I vote for the first option. I understand it involves more typing,
but I see no reason to push more
On Mon, Oct 01, 2018 at 08:32:12PM +0200, Richard Weinberger wrote:
> Am Montag, 1. Oktober 2018, 20:25:26 CEST schrieb Ido Schimmel:
> > On Mon, Oct 01, 2018 at 08:16:22PM +0200, Richard Weinberger wrote:
> > > Florian,
> > >
> > > Am Montag, 1. Oktober
On Mon, Oct 01, 2018 at 08:16:22PM +0200, Richard Weinberger wrote:
> Florian,
>
> Am Montag, 1. Oktober 2018, 18:24:25 CEST schrieb Florian Fainelli:
> > If all you are doing is forwarding anything, one thing I experimented
> > with before is the following:
> >
> > # tc qdisc add dev eth1
On Wed, Sep 26, 2018 at 03:18:02PM +0300, Nikolay Aleksandrov wrote:
> Further reduce the size of net_bridge with 8 bytes and reduce the number of
> holes in it:
> Before: holes: 5, sum holes: 15
> After: holes: 2, sum holes: 3
>
> Also as a bonus we get offload_fwd_mark in the first cache line
On Tue, May 29, 2018 at 01:46:09PM +0300, Dan Carpenter wrote:
> It occured to me that I should read the cover letter and here are the
> answers I was looking for. But the cover letter isn't saved after the
> commits are merged.
DaveM adds the cover letter to the merge commit.
n over vlan-aware bridge where the egress device is phys
Signed-off-by: Petr Machata <pe...@mellanox.com>
Signed-off-by: Ido Schimmel <ido...@mellanox.com>
---
.../net/ethernet/mellanox/mlxsw/spectrum_span.c| 27 +++---
1 file changed, 19 insertions(+), 8 deleti
From: Petr Machata <pe...@mellanox.com>
Add MLXSW_REG_MPAT_SPAN_TYPE_REMOTE_ETH to support VLAN-encapsulated
port mirroring.
Signed-off-by: Petr Machata <pe...@mellanox.com>
Signed-off-by: Ido Schimmel <ido...@mellanox.com>
---
drivers/net/ethernet/mellanox/mlxsw/reg.h
asters as well.
Signed-off-by: Petr Machata <pe...@mellanox.com>
Signed-off-by: Ido Schimmel <ido...@mellanox.com>
---
net/bridge/br_vlan.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/net/bridge/br_vlan.c b/net/bridge/br_vlan.c
index df37a5137c25..dc832c0934c6 100644
--- a/net/brid
Petr says:
When offloading "tc action mirred mirror", there are several scenarios
where VLAN devices can show up, that mlxsw can offload on Spectrum
machines.
I) A direct mirror to a VLAN device on top of a front-panel port device
(commonly referred to as "RSPAN")
II) VLAN device in egress
501 - 600 of 647 matches
Mail list logo