From: Ido Schimmel <idosch(a)mellanox.com>
In kernel 4.8, L3 support was added to the mlxsw driver. Therefore,
non-bridged traffic is now directed to the switch itself only if the
packet's DIP matches the interface's IP.
However, due to several pending ordering problems in the switchdev
infrastructure, IP configuration is only offloaded to the device in
cases where it makes sense. Since IP configuration on a LAG port doesn't
make sense the operation is aborted and all the routes in the system are
flushed, thereby causing the machine to become unresponsive.
Until these issues are resolved in the kernel, remove the IP address
from the switch port so that when create_team() is called it won't be
configured upon port being up()-ed.
Signed-off-by: Ido Schimmel <idosch(a)mellanox.com>
---
recipes/switchdev/l2-006-bridge_team.py | 1 +
recipes/switchdev/l2-015-bridge_team_vlan1d.py | 1 +
2 files changed, 2 insertions(+)
diff --git a/recipes/switchdev/l2-006-bridge_team.py
b/recipes/switchdev/l2-006-bridge_team.py
index 48b9752..5366b39 100644
--- a/recipes/switchdev/l2-006-bridge_team.py
+++ b/recipes/switchdev/l2-006-bridge_team.py
@@ -55,6 +55,7 @@ def do_task(ctl, hosts, ifaces, aliases):
tl.ping_simple(sw_if1, m1_if1)
# Repopulate the LAGs and make sure fastpath is OK.
+ sw_if1.set_addresses([]) # LAG port can't have IP address.
sw_lag3 = sw.create_team(slaves=[sw_if1, sw_if2],
config=team_config)
sw_br.slave_add(sw_lag3.get_id())
diff --git a/recipes/switchdev/l2-015-bridge_team_vlan1d.py
b/recipes/switchdev/l2-015-bridge_team_vlan1d.py
index 723a04a..4078b94 100644
--- a/recipes/switchdev/l2-015-bridge_team_vlan1d.py
+++ b/recipes/switchdev/l2-015-bridge_team_vlan1d.py
@@ -76,6 +76,7 @@ def do_task(ctl, hosts, ifaces, aliases):
tl.ping_simple(sw_if1, m1_if1)
# Repopulate the LAGs and make sure fastpath is OK.
+ sw_if1.set_addresses([]) # LAG port can't have IP address.
sw_lag3 = sw.create_team(slaves=[sw_if1, sw_if2],
config=team_config)
sw_br1.slave_add(sw_lag3.get_id())
--
2.7.4
Show replies by date