]> git.proxmox.com Git - ovs.git/commitdiff
tests: Fix race in MPLS translate.
authorAlin Serdean <aserdean@cloudbasesolutions.com>
Wed, 1 Feb 2017 14:39:36 +0000 (14:39 +0000)
committerBen Pfaff <blp@ovn.org>
Thu, 2 Feb 2017 17:52:21 +0000 (09:52 -0800)
On slow systems ofproto/trace in combination with a recirculation ID
causes issues because the flow is evicted before the second packet
can reach it.

I.e:
"
Flow: recirc_id=0x2,ip,in_port=1,vlan_tci=0x0000,dl_src=f8:bc:12:44:34:b6,
dl_dst=f8:bc:12:46:58:e0,nw_src=1.1.2.92,nw_dst=1.1.2.88,nw_proto=47,
nw_tos=0,nw_ecn=0,nw_ttl=64

bridge("br0")
-------------
     >>>> Recirculation context not found for ID 2 <<<<

Final flow: unchanged
Megaflow: recirc_id=0x2,ip,in_port=1,nw_frag=no
Datapath actions: drop
Translation failed (No recirculation context), packet is dropped.
"

Since eviction of the flows is not needed for the current logic,
this commit adds a time/stop to bypass the problem.

Signed-off-by: Alin Gabriel Serdean <aserdean@cloudbasesolutions.com>
Signed-off-by: Ben Pfaff <blp@ovn.org>
tests/mpls-xlate.at

index 04c61932fc0b6ad9c605f48ae07d2e6a0aa62c9b..9bbf22a99a3a26793e4e15681818986c619a5a95 100644 (file)
@@ -38,7 +38,9 @@ AT_CHECK([ovs-ofctl -O OpenFlow13 add-flow br0 dl_type=0x8847,in_port=1,mpls_lab
 
 AT_CHECK([ovs-ofctl -O OpenFlow13 add-flow br1 in_port=1,action=output:LOCAL])
 
-
+dnl The following is needed on slow systems, because the flows in the datapath
+dnl will be evicted before the packet can match the recirculation context
+ovs-appctl time/stop
 
 dnl Test MPLS push
 AT_CHECK([ovs-appctl ofproto/trace ovs-dummy 'in_port(100),eth(src=f8:bc:12:44:34:b6,dst=f8:bc:12:46:58:e0),eth_type(0x0800),ipv4(src=1.1.2.92,dst=1.1.2.88,proto=17,tos=0,ttl=64,frag=no),udp(src=7777,dst=80)'], [0], [stdout])