Re: [PATCH net-next v11 5/6] openvswitch: add layer 3 flow/port support
From: Joe Stringer <hidden>
Date: 2016-08-30 23:23:40
On 26 August 2016 at 02:13, Simon Horman [off-list ref] wrote:
On Thu, Aug 25, 2016 at 05:33:57PM -0700, Joe Stringer wrote:quoted
On 25 August 2016 at 03:08, Simon Horman [off-list ref] wrote:quoted
Please find my working patch below. From: Simon Horman <horms@verge.net.au> Subject: [PATCH] system-traffic: Exercise GSO Exercise GSO for: unencapsulated; MPLS; GRE; and MPLS in GRE. There is scope to extend this testing to other encapsulation formats if desired. This is motivated by a desire to test GRE and MPLS encapsulation in the context of L3/VPN (MPLS over non-TEB GRE work). That is not tested here but tests for those cases would idealy be based on those in this patch. Signed-off-by: Simon Horman <horms@verge.net.au>I realised that these tests disable TSO, but they don't actually check if GSO is enabled. Maybe it's safe to assume this, but it's more explicit to actually look for it in the tests.Good point, I'll see about checking that.quoted
With particular setups (fedora23 in particular, both kernel and userspace testsuites) I see this: ./system-traffic.at:371: ip netns exec at_ns0 sh << NS_EXEC_HEREDOC ip route add 10.1.2.0/24 encap mpls 100 via inet 10.1.1.2 dev ns_gre0 NS_EXEC_HEREDOC--- /dev/null 2016-08-19 01:28:02.151000000 +0000 +++ /home/gitlab-runner/builds/83c49bff/0/root/gitlab-ovs/ovs/tests/system-kmod-testsuite.dir/at-groups/10/stderr2016-08-25 17:16:27.324000000 +0000@@ -0,0 +1 @@ +Error: either "to" is duplicate, or "encap" is a garbage.I'm guessing the ip tool is a little out of date. We could detect and skip this with something like: AT_SKIP_IF([ip route help 2>&1 | grep encap]) in the CHECK_MPLS.Thanks, I'll add something like that.quoted
Hmm, I'm still seeing the bad counts of segments retransmited even with the diff change on a kernel I have built at bf0f500bd019 ("Merge tag 'trace-v4.8-1' of git://git.kernel.org/pub/scm/linux/kernel/git/rostedt/linux-trace"). If it's passing on latest net-next then maybe I just need to swap out that box's kernel for a newer build. I'll try that.It is possible that it is detecting a bug. Which test is failing?
FWIW I tried with a newer build, commit 9a0a5c4cb1af ("net:
systemport: Fix ordering in intrl2_*_mask_clear macro"). I no longer
see the issue.
Unfortunately I lost my test output. It was one of these two:
8: datapath - ping over gre tunnel FAILED
(system-traffic.at:294)
9: datapath - http over gre tunnel FAILED
(system-traffic.at:348)
I also realised that I didn't have MPLS router enabled in my kernel
config so the MPLS tests were getting skipped. I enabled MPLS_ROUTING,
but now I see this failure on the "http over mpls" tests:
./system-traffic.at:111: ip netns exec at_ns0 sh << NS_EXEC_HEREDOC
ip route add 10.1.1.0/24 encap mpls 100 via inet 172.31.1.2 dev p0
NS_EXEC_HEREDOC--- /dev/null 2016-08-30 15:22:28.813316948 -0700
+++ /home/gitlab-runner/builds/f1d4a2be/0/root/gitlab-ovs/ovs/tests/system-kmod-testsuite.dir/at-groups/4/stderr2016-08-30 15:33:45.133306581 -0700
@@ -0,0 +1 @@ +RTNETLINK answers: Operation not supported
At this stage I have mostly added TSO/GSO testing to existing checks. Perhaps it would be better to break them out into separate checks so ping/http can be be checked without considering TSO/GSO which may have some value in situations where TSO/GSO is broken which is actually what I am interested in testing.
Sounds reasonable. _______________________________________________ dev mailing list dev@openvswitch.org http://openvswitch.org/mailman/listinfo/dev