diff mbox series

[ovs-dev,15/15] tests: Comment currently failing TC system-traffic tests.

Message ID 166238348860.2220027.4758326944386903671.stgit@ebuild
State Superseded
Headers show
Series tests: Add system-traffic.at tests to check-offloads. | expand

Checks

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

Commit Message

Eelco Chaudron Sept. 5, 2022, 1:11 p.m. UTC
The goal was to run 200 successful tc tests in a row. To do this the
following was run:

  for i in {1..200}; do make check-offloads TESTSUITEFLAGS="50" && break; \
    echo "ALL_200_OK: $i"; done;

Unfortunately, a bunch of test cases showed occasional failures.
For now, they are excluded from the test cases and need further
investigation. They are:

  802.1ad - vlan_limit
  conntrack - DNAT load balancing
  conntrack - DNAT load balancing with NC
  conntrack - ICMP related
  conntrack - ICMP related to original direction
  conntrack - ICMP related with NAT
  conntrack - IPv4 fragmentation with fragments specified
  conntrack - multiple namespaces, internal ports
  conntrack - zones from other field
  conntrack - zones from other field, more tests
  datapath - basic truncate action
  datapath - multiple mpls label pop
  datapath - truncate and output to gre tunnel
  datapath - truncate and output to gre tunnel by simulated packets

Some other test cases also fail due to what looks like problems
in the tc kernel conntrack implementation. For details see the
details in the system-offloads-testsuite.at exclusion list definition.

Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
---
 tests/system-offloads-testsuite.at |   43 +++++++++++++++++++++++++++++++-----
 1 file changed, 37 insertions(+), 6 deletions(-)

Comments

Roi Dayan Nov. 7, 2022, 11:44 a.m. UTC | #1
On 05/09/2022 16:11, Eelco Chaudron wrote:
> The goal was to run 200 successful tc tests in a row. To do this the
> following was run:
> 
>   for i in {1..200}; do make check-offloads TESTSUITEFLAGS="50" && break; \
>     echo "ALL_200_OK: $i"; done;
> 

is there a typo in the loop example?
Using TESTSUITEFLAGS="50" doesn't run me all the added test but
a specific test.
also instead of "&& break" should be "|| break?


> Unfortunately, a bunch of test cases showed occasional failures.
> For now, they are excluded from the test cases and need further
> investigation. They are:
> 
>   802.1ad - vlan_limit
>   conntrack - DNAT load balancing
>   conntrack - DNAT load balancing with NC
>   conntrack - ICMP related
>   conntrack - ICMP related to original direction
>   conntrack - ICMP related with NAT
>   conntrack - IPv4 fragmentation with fragments specified
>   conntrack - multiple namespaces, internal ports
>   conntrack - zones from other field
>   conntrack - zones from other field, more tests
>   datapath - basic truncate action
>   datapath - multiple mpls label pop
>   datapath - truncate and output to gre tunnel
>   datapath - truncate and output to gre tunnel by simulated packets
> 
> Some other test cases also fail due to what looks like problems
> in the tc kernel conntrack implementation. For details see the
> details in the system-offloads-testsuite.at exclusion list definition.
> 
> Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
> ---
>  tests/system-offloads-testsuite.at |   43 +++++++++++++++++++++++++++++++-----
>  1 file changed, 37 insertions(+), 6 deletions(-)
> 
> diff --git a/tests/system-offloads-testsuite.at b/tests/system-offloads-testsuite.at
> index 0d5537a43..318e6d1e6 100644
> --- a/tests/system-offloads-testsuite.at
> +++ b/tests/system-offloads-testsuite.at
> @@ -72,20 +72,51 @@ m4_define([CHECK_CONNTRACK_TIMEOUT],
>  # issue.
>  m4_define([OVS_TEST_SKIP_LIST],
>      [ovs_test_skip_list="
> +# TC does not support moving ports to a different namespace than vswitchd's
> +# namespace, so we need to disable this test.
>  conntrack - multiple namespaces, internal ports
> +
> +# When moving through different zones, it can take up to ~8 seconds before
> +# the conntrack state gets updated causing these tests to fail.
>  conntrack - ct metadata, multiple zones
> -conntrack - ICMP related
> -conntrack - ICMP related to original direction
> +conntrack - multiple zones, local
> +conntrack - multi-stage pipeline, local
> +
> +# The kernel's tcf_ct_act() function does not seem to take care of any (QinQ)
> +# VLAN headers causing commits to fail. However, if this is solved, we have to
> +# make sure conntrack does not break the VLAN boundary, i.e., putting together
> +# two packets with different CVLAN+SVLAN values.
>  conntrack - IPv4 fragmentation + cvlan
> -conntrack - IPv4 fragmentation with fragments specified
>  conntrack - IPv6 fragmentation + cvlan
> +
> +# Fragmentation handling in ct zone 9 does not seem to work correctly.
> +# When moving this test over to the default zone all works fine.
>  conntrack - Fragmentation over vxlan
>  conntrack - IPv6 Fragmentation over vxlan
> -conntrack - multiple zones, local
> -conntrack - multi-stage pipeline, local
> +
> +# Occasionaly we fail on the 'execute ct(commit) failed (Invalid argument) on
> +# packet...' log message being present
> +conntrack - zones from other field
> +conntrack - zones from other field, more tests
> +conntrack - multiple namespaces, internal ports
> +conntrack - IPv4 fragmentation with fragments specified
> +
> +# Occasionaly we fail on the 'failed to flow_get/flow_del (No such file or directory)
> +# ufid:..' log message being present.
> +datapath - multiple mpls label pop
> +datapath - basic truncate action
> +conntrack - ICMP related
> +conntrack - ICMP related to original direction
>  conntrack - ICMP related with NAT
>  conntrack - DNAT load balancing
> -conntrack - DNAT load balancing with NC"
> +conntrack - DNAT load balancing with NC
> +802.1ad - vlan_limit
> +
> +# Occasionalt we fail with extreme high byte counters, i.e.
> +# n_bytes=18446744073705804134
> +datapath - truncate and output to gre tunnel by simulated packets
> +datapath - truncate and output to gre tunnel
> +"
>  echo "$ovs_test_skip_list" | sed "s/<SPC>/ /g"])
>  
>  m4_include([tests/system-traffic.at])
> 
> _______________________________________________
> dev mailing list
> dev@openvswitch.org
> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
Eelco Chaudron Nov. 7, 2022, 7:23 p.m. UTC | #2
On 7 Nov 2022, at 12:44, Roi Dayan wrote:

> On 05/09/2022 16:11, Eelco Chaudron wrote:
>> The goal was to run 200 successful tc tests in a row. To do this the
>> following was run:
>>
>>   for i in {1..200}; do make check-offloads TESTSUITEFLAGS="50" && break; \
>>     echo "ALL_200_OK: $i"; done;
>>

Thanks for reviewing the series. I will move the new stuff to a separate file to include.

> is there a typo in the loop example?
> Using TESTSUITEFLAGS="50" doesn't run me all the added test but
> a specific test.
> also instead of "&& break" should be "|| break?

I cut/paste the wrong command from my notes :( Will fix this also.

>> Unfortunately, a bunch of test cases showed occasional failures.
>> For now, they are excluded from the test cases and need further
>> investigation. They are:
>>
>>   802.1ad - vlan_limit
>>   conntrack - DNAT load balancing
>>   conntrack - DNAT load balancing with NC
>>   conntrack - ICMP related
>>   conntrack - ICMP related to original direction
>>   conntrack - ICMP related with NAT
>>   conntrack - IPv4 fragmentation with fragments specified
>>   conntrack - multiple namespaces, internal ports
>>   conntrack - zones from other field
>>   conntrack - zones from other field, more tests
>>   datapath - basic truncate action
>>   datapath - multiple mpls label pop
>>   datapath - truncate and output to gre tunnel
>>   datapath - truncate and output to gre tunnel by simulated packets
>>
>> Some other test cases also fail due to what looks like problems
>> in the tc kernel conntrack implementation. For details see the
>> details in the system-offloads-testsuite.at exclusion list definition.
>>
>> Signed-off-by: Eelco Chaudron <echaudro@redhat.com>
>> ---
>>  tests/system-offloads-testsuite.at |   43 +++++++++++++++++++++++++++++++-----
>>  1 file changed, 37 insertions(+), 6 deletions(-)
>>
>> diff --git a/tests/system-offloads-testsuite.at b/tests/system-offloads-testsuite.at
>> index 0d5537a43..318e6d1e6 100644
>> --- a/tests/system-offloads-testsuite.at
>> +++ b/tests/system-offloads-testsuite.at
>> @@ -72,20 +72,51 @@ m4_define([CHECK_CONNTRACK_TIMEOUT],
>>  # issue.
>>  m4_define([OVS_TEST_SKIP_LIST],
>>      [ovs_test_skip_list="
>> +# TC does not support moving ports to a different namespace than vswitchd's
>> +# namespace, so we need to disable this test.
>>  conntrack - multiple namespaces, internal ports
>> +
>> +# When moving through different zones, it can take up to ~8 seconds before
>> +# the conntrack state gets updated causing these tests to fail.
>>  conntrack - ct metadata, multiple zones
>> -conntrack - ICMP related
>> -conntrack - ICMP related to original direction
>> +conntrack - multiple zones, local
>> +conntrack - multi-stage pipeline, local
>> +
>> +# The kernel's tcf_ct_act() function does not seem to take care of any (QinQ)
>> +# VLAN headers causing commits to fail. However, if this is solved, we have to
>> +# make sure conntrack does not break the VLAN boundary, i.e., putting together
>> +# two packets with different CVLAN+SVLAN values.
>>  conntrack - IPv4 fragmentation + cvlan
>> -conntrack - IPv4 fragmentation with fragments specified
>>  conntrack - IPv6 fragmentation + cvlan
>> +
>> +# Fragmentation handling in ct zone 9 does not seem to work correctly.
>> +# When moving this test over to the default zone all works fine.
>>  conntrack - Fragmentation over vxlan
>>  conntrack - IPv6 Fragmentation over vxlan
>> -conntrack - multiple zones, local
>> -conntrack - multi-stage pipeline, local
>> +
>> +# Occasionaly we fail on the 'execute ct(commit) failed (Invalid argument) on
>> +# packet...' log message being present
>> +conntrack - zones from other field
>> +conntrack - zones from other field, more tests
>> +conntrack - multiple namespaces, internal ports
>> +conntrack - IPv4 fragmentation with fragments specified
>> +
>> +# Occasionaly we fail on the 'failed to flow_get/flow_del (No such file or directory)
>> +# ufid:..' log message being present.
>> +datapath - multiple mpls label pop
>> +datapath - basic truncate action
>> +conntrack - ICMP related
>> +conntrack - ICMP related to original direction
>>  conntrack - ICMP related with NAT
>>  conntrack - DNAT load balancing
>> -conntrack - DNAT load balancing with NC"
>> +conntrack - DNAT load balancing with NC
>> +802.1ad - vlan_limit
>> +
>> +# Occasionalt we fail with extreme high byte counters, i.e.
>> +# n_bytes=18446744073705804134
>> +datapath - truncate and output to gre tunnel by simulated packets
>> +datapath - truncate and output to gre tunnel
>> +"
>>  echo "$ovs_test_skip_list" | sed "s/<SPC>/ /g"])
>>
>>  m4_include([tests/system-traffic.at])
>>
>> _______________________________________________
>> dev mailing list
>> dev@openvswitch.org
>> https://mail.openvswitch.org/mailman/listinfo/ovs-dev
diff mbox series

Patch

diff --git a/tests/system-offloads-testsuite.at b/tests/system-offloads-testsuite.at
index 0d5537a43..318e6d1e6 100644
--- a/tests/system-offloads-testsuite.at
+++ b/tests/system-offloads-testsuite.at
@@ -72,20 +72,51 @@  m4_define([CHECK_CONNTRACK_TIMEOUT],
 # issue.
 m4_define([OVS_TEST_SKIP_LIST],
     [ovs_test_skip_list="
+# TC does not support moving ports to a different namespace than vswitchd's
+# namespace, so we need to disable this test.
 conntrack - multiple namespaces, internal ports
+
+# When moving through different zones, it can take up to ~8 seconds before
+# the conntrack state gets updated causing these tests to fail.
 conntrack - ct metadata, multiple zones
-conntrack - ICMP related
-conntrack - ICMP related to original direction
+conntrack - multiple zones, local
+conntrack - multi-stage pipeline, local
+
+# The kernel's tcf_ct_act() function does not seem to take care of any (QinQ)
+# VLAN headers causing commits to fail. However, if this is solved, we have to
+# make sure conntrack does not break the VLAN boundary, i.e., putting together
+# two packets with different CVLAN+SVLAN values.
 conntrack - IPv4 fragmentation + cvlan
-conntrack - IPv4 fragmentation with fragments specified
 conntrack - IPv6 fragmentation + cvlan
+
+# Fragmentation handling in ct zone 9 does not seem to work correctly.
+# When moving this test over to the default zone all works fine.
 conntrack - Fragmentation over vxlan
 conntrack - IPv6 Fragmentation over vxlan
-conntrack - multiple zones, local
-conntrack - multi-stage pipeline, local
+
+# Occasionaly we fail on the 'execute ct(commit) failed (Invalid argument) on
+# packet...' log message being present
+conntrack - zones from other field
+conntrack - zones from other field, more tests
+conntrack - multiple namespaces, internal ports
+conntrack - IPv4 fragmentation with fragments specified
+
+# Occasionaly we fail on the 'failed to flow_get/flow_del (No such file or directory)
+# ufid:..' log message being present.
+datapath - multiple mpls label pop
+datapath - basic truncate action
+conntrack - ICMP related
+conntrack - ICMP related to original direction
 conntrack - ICMP related with NAT
 conntrack - DNAT load balancing
-conntrack - DNAT load balancing with NC"
+conntrack - DNAT load balancing with NC
+802.1ad - vlan_limit
+
+# Occasionalt we fail with extreme high byte counters, i.e.
+# n_bytes=18446744073705804134
+datapath - truncate and output to gre tunnel by simulated packets
+datapath - truncate and output to gre tunnel
+"
 echo "$ovs_test_skip_list" | sed "s/<SPC>/ /g"])
 
 m4_include([tests/system-traffic.at])