The "check packet length" test creates two unorthodox
MAC_Bindings. The two MAC Bindings' datapath values refer to
southbound Datapath_Bindings for northbound Logical_Switches. Meanwhile,
the MAC_Bindings' logical_port values refer to northbound
Logical_Router_Ports.

OVN makes the assumption that all MAC_Bindings' will refer to
Datapath_Bindings corresponding to northbound Logical_Router_Ports.
Therefore, if ovn-northd thinks it should clean up stale MAC Bindings,
then it will delete any MAC_Binding whose datapath column refers to a
Logical_Switch Datapath_Binding.

The test passes because it never happens to trigger ovn-northd's MAC
binding cleanup code. An upcoming patch is going to change the
circumstances under which ovn-northd will clean up stale MAC Bindings,
though.

With this change, the test creates the MAC_Binding using the logical
router Datapath_Binding instead. The test still passes, and now it will
not have its MAC_Binding removed by ovn-northd when cleaning up stale
MAC_Bindings.

Signed-off-by: Mark Michelson <mmich...@redhat.com>
---
v3 -> v4:
 * Rebased.

v3: This is the first version with this patch present.
---
 tests/ovn.at | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/tests/ovn.at b/tests/ovn.at
index 335425532..cfc4e15cd 100644
--- a/tests/ovn.at
+++ b/tests/ovn.at
@@ -22192,7 +22192,7 @@ AT_CAPTURE_FILE([sbflows])
 AT_CHECK([as hv1 ovs-ofctl dump-flows br-int  \
 | grep "check_pkt_larger" | wc -l], [0], [[0
 ]])
-dp_uuid=$(ovn-sbctl find datapath_binding | grep sw0 -B2 | grep _uuid | \
+dp_uuid=$(ovn-sbctl find datapath_binding | grep lr0 -B2 | grep _uuid | \
 awk '{print $3}')
 check_uuid ovn-sbctl create MAC_Binding ip=172.168.0.3 datapath=$dp_uuid \
 logical_port=lr0-public mac="00\:00\:00\:12\:af\:11"
@@ -22263,7 +22263,7 @@ check ovn-nbctl lr-nat-add lr1 snat 172.168.0.100 
10.0.0.0/24
 check ovn-nbctl lr-nat-add lr1 snat 2000::1 1000::/64
 check ovn-nbctl --wait=sb sync
 
-dp_uuid=$(ovn-sbctl find datapath_binding | grep sw0 -B2 | grep _uuid | \
+dp_uuid=$(ovn-sbctl find datapath_binding | grep lr1 -B2 | grep _uuid | \
 awk '{print $3}')
 check_uuid ovn-sbctl create MAC_Binding ip=172.168.0.3 datapath=$dp_uuid \
 logical_port=lr1-public mac="00\:00\:00\:12\:af\:11"
-- 
2.47.0

_______________________________________________
dev mailing list
d...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-dev

Reply via email to