diff mbox series

[ovs-dev] system-offloads-traffic: Avoid check_pkt_len action test random failures.

Message ID 20220725081908.385248-1-david.marchand@redhat.com
State Accepted
Commit 1cecd385f4e756943d8099c2574fcc822fb9fc46
Headers show
Series [ovs-dev] system-offloads-traffic: Avoid check_pkt_len action test random failures. | expand

Checks

Context Check Description
ovsrobot/intel-ovs-compilation success test: success
ovsrobot/apply-robot success apply and check: success
ovsrobot/github-robot-_Build_and_Test success github build: passed

Commit Message

David Marchand July 25, 2022, 8:19 a.m. UTC
On my Fedora 36, the test with enabled offloads often fails with one of
those ping failing.
By chance (?), the previous tcpdumps are not stopped and I can see for
example:
10:04:02.534492 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 2, length 72
10:04:02.639443 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 3, length 72
10:04:02.743447 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 4, length 72
10:04:02.846447 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 5, length 72
10:04:02.950519 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 6, length 72
10:04:03.054697 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 7, length 72
10:04:03.158448 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 8, length 72
10:04:03.262541 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 9, length 72
10:04:03.366444 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 10, length 72
10:04:03.466501 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 11, length 72

The first ping request has not been handled correctly.

Adding a sleep 1 (like other offloads unit tests) seems to be enough to
avoid this situation.

Fixes: 02dabb21f243 ("tests: Add check_pkt_len action test to system-offload-traffic.")
Signed-off-by: David Marchand <david.marchand@redhat.com>
---
 tests/system-offloads-traffic.at | 2 ++
 1 file changed, 2 insertions(+)

Comments

Eelco Chaudron July 25, 2022, 8:58 a.m. UTC | #1
On 25 Jul 2022, at 10:19, David Marchand wrote:

> On my Fedora 36, the test with enabled offloads often fails with one of
> those ping failing.
> By chance (?), the previous tcpdumps are not stopped and I can see for
> example:
> 10:04:02.534492 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 2, length 72
> 10:04:02.639443 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 3, length 72
> 10:04:02.743447 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 4, length 72
> 10:04:02.846447 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 5, length 72
> 10:04:02.950519 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 6, length 72
> 10:04:03.054697 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 7, length 72
> 10:04:03.158448 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 8, length 72
> 10:04:03.262541 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 9, length 72
> 10:04:03.366444 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 10, length 72
> 10:04:03.466501 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 11, length 72
>
> The first ping request has not been handled correctly.
>
> Adding a sleep 1 (like other offloads unit tests) seems to be enough to
> avoid this situation.
>
> Fixes: 02dabb21f243 ("tests: Add check_pkt_len action test to system-offload-traffic.")
> Signed-off-by: David Marchand <david.marchand@redhat.com>

Looks good to me. Did a loop test on my system and now failures after 100 runs :)

Acked-by: Eelco Chaudron <echaudro@redhat.com>
Ilya Maximets July 25, 2022, 8:24 p.m. UTC | #2
On 7/25/22 10:58, Eelco Chaudron wrote:
> 
> 
> On 25 Jul 2022, at 10:19, David Marchand wrote:
> 
>> On my Fedora 36, the test with enabled offloads often fails with one of
>> those ping failing.
>> By chance (?), the previous tcpdumps are not stopped and I can see for
>> example:
>> 10:04:02.534492 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 2, length 72
>> 10:04:02.639443 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 3, length 72
>> 10:04:02.743447 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 4, length 72
>> 10:04:02.846447 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 5, length 72
>> 10:04:02.950519 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 6, length 72
>> 10:04:03.054697 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 7, length 72
>> 10:04:03.158448 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 8, length 72
>> 10:04:03.262541 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 9, length 72
>> 10:04:03.366444 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 10, length 72
>> 10:04:03.466501 IP 10.1.1.1 > 10.1.1.2: ICMP echo request, id 62835, seq 11, length 72
>>
>> The first ping request has not been handled correctly.
>>
>> Adding a sleep 1 (like other offloads unit tests) seems to be enough to
>> avoid this situation.
>>
>> Fixes: 02dabb21f243 ("tests: Add check_pkt_len action test to system-offload-traffic.")
>> Signed-off-by: David Marchand <david.marchand@redhat.com>
> 
> Looks good to me. Did a loop test on my system and now failures after 100 runs :)
> 
> Acked-by: Eelco Chaudron <echaudro@redhat.com>
> 

Thanks!  Applied to master and branch-3.0.

Best regards, Ilya Maximets.
diff mbox series

Patch

diff --git a/tests/system-offloads-traffic.at b/tests/system-offloads-traffic.at
index 97eba00eff..834d444f05 100644
--- a/tests/system-offloads-traffic.at
+++ b/tests/system-offloads-traffic.at
@@ -538,6 +538,7 @@  table=4,in_port=1,reg0=0x1 actions=mod_nw_tos:4,output:3
 table=4,in_port=1,reg0=0x0 actions=mod_dl_src:00:11:11:11:11:11,output:4
 ])
 AT_CHECK([ovs-ofctl --protocols=OpenFlow10 add-flows br0 flows.txt])
+sleep 1
 NS_CHECK_EXEC([at_ns1], [ping -q -c 10 -i 0.1 -w 2 -s 64 10.1.1.2 | FORMAT_PING], [0], [dnl
 10 packets transmitted, 10 received, 0% packet loss, time 0ms
 ], [], [ovs-appctl dpctl/dump-flows; ovs-ofctl dump-flows br0])
@@ -555,6 +556,7 @@  table=4,in_port=1,reg0=0x1 actions=mod_dl_src:00:11:11:11:11:11,output:3
 table=4,in_port=1,reg0=0x0 actions=mod_nw_tos:8,output:4
 ])
 AT_CHECK([ovs-ofctl --protocols=OpenFlow10 add-flows br0 flows.txt])
+sleep 1
 NS_CHECK_EXEC([at_ns1], [ping -q -c 10 -i 0.1 -w 2 -s 64 10.1.1.2 | FORMAT_PING], [0], [dnl
 10 packets transmitted, 10 received, 0% packet loss, time 0ms
 ], [], [ovs-appctl dpctl/dump-flows; ovs-ofctl dump-flows br0])