L2-LEARN:fix l2fib entry seq num not updated on hit (VPP-888)
fixed instability in l2bd_multi_instnce test - sometimes failing with extra packets captured it appears l2-learn was not updating hit entries but rather a copy of them. if the ager did not have a chance to run before the test was running the learning cycle - entries were not updated with the packet's seq num - causing packets to flood when hitting the stale seq_num in l2-fwd - hence the extra packets fixed handling of filter entries revert workaround for instability in test Change-Id: I16d918e6310a5bf40bad5b7335b2140c2867cb71 Signed-off-by: Eyal Bari <ebari@cisco.com> (cherry picked from commit 25ff2ea3a31e422094f6d91eab46222a29a77c4b)
This commit is contained in:
@ -403,39 +403,7 @@ class TestL2bdMultiInst(VppTestCase):
|
||||
self.run_verify_test()
|
||||
|
||||
def test_l2bd_inst_02(self):
|
||||
""" L2BD Multi-instance test 2 - delete 2 BDs
|
||||
"""
|
||||
# Config 3
|
||||
# Delete 2 BDs
|
||||
self.delete_bd(2)
|
||||
|
||||
# Verify 3
|
||||
for bd_id in self.bd_deleted_list:
|
||||
self.assertEqual(self.verify_bd(bd_id), 0)
|
||||
for bd_id in self.bd_list:
|
||||
self.assertEqual(self.verify_bd(bd_id), 1)
|
||||
|
||||
# Test 3
|
||||
self.run_verify_test()
|
||||
|
||||
def test_l2bd_inst_03(self):
|
||||
""" L2BD Multi-instance test 3 - add 2 BDs
|
||||
"""
|
||||
# Config 4
|
||||
# Create 5 BDs, put interfaces to these BDs and send MAC learning
|
||||
# packets
|
||||
self.create_bd_and_mac_learn(2)
|
||||
|
||||
# Verify 4
|
||||
for bd_id in self.bd_list:
|
||||
self.assertEqual(self.verify_bd(bd_id), 1)
|
||||
|
||||
# Test 4
|
||||
# self.vapi.cli("clear trace")
|
||||
self.run_verify_test()
|
||||
|
||||
def test_l2bd_inst_04(self):
|
||||
""" L2BD Multi-instance test 4 - update data of 5 BDs
|
||||
""" L2BD Multi-instance test 2 - update data of 5 BDs
|
||||
"""
|
||||
# Config 2
|
||||
# Update data of 5 BDs (disable learn, forward, flood, uu-flood)
|
||||
@ -460,6 +428,38 @@ class TestL2bdMultiInst(VppTestCase):
|
||||
self.verify_bd(self.bd_list[4], learn=False, forward=True,
|
||||
flood=True, uu_flood=True)
|
||||
|
||||
def test_l2bd_inst_03(self):
|
||||
""" L2BD Multi-instance test 3 - delete 2 BDs
|
||||
"""
|
||||
# Config 3
|
||||
# Delete 2 BDs
|
||||
self.delete_bd(2)
|
||||
|
||||
# Verify 3
|
||||
for bd_id in self.bd_deleted_list:
|
||||
self.assertEqual(self.verify_bd(bd_id), 0)
|
||||
for bd_id in self.bd_list:
|
||||
self.assertEqual(self.verify_bd(bd_id), 1)
|
||||
|
||||
# Test 3
|
||||
self.run_verify_test()
|
||||
|
||||
def test_l2bd_inst_04(self):
|
||||
""" L2BD Multi-instance test 4 - add 2 BDs
|
||||
"""
|
||||
# Config 4
|
||||
# Create 5 BDs, put interfaces to these BDs and send MAC learning
|
||||
# packets
|
||||
self.create_bd_and_mac_learn(2)
|
||||
|
||||
# Verify 4
|
||||
for bd_id in self.bd_list:
|
||||
self.assertEqual(self.verify_bd(bd_id), 1)
|
||||
|
||||
# Test 4
|
||||
# self.vapi.cli("clear trace")
|
||||
self.run_verify_test()
|
||||
|
||||
def test_l2bd_inst_05(self):
|
||||
""" L2BD Multi-instance test 5 - delete 5 BDs
|
||||
"""
|
||||
|
Reference in New Issue
Block a user