Hi Darrell, Thanks for the review. Will do.
Best, Yifeng On Fri, Aug 10, 2018 at 3:12 PM, Darrell Ball <db...@vmware.com> wrote: > Thanks Yifeng > > Thanks for switching to use ‘packet-out’. > Patches 4-8 seem like they can be part of the same patch, since they are > closely related. > As discussed, none of the tests pass for Userspace datapath, so maybe you > want to check them out or just disable them for now > > I tested with “Linux ubuntu 4.4.0-119-generic #143-Ubuntu SMP Mon Apr 2 > 16:08:24 UTC 2018 x86_64 x86_64 x86_64 GNU/Linux” > Fusion Ubuntu VM > > dball@ubuntu:~/ovs$ time sudo make check-system-userspace > TESTSUITEFLAGS='18-22' -C _gcc > make: Entering directory '/home/dball/ovs/_gcc' > make all-recursive > make[1]: Entering directory '/home/dball/ovs/_gcc' > Making all in datapath > make[2]: Entering directory '/home/dball/ovs/_gcc/datapath' > Making all in linux > make[3]: Entering directory '/home/dball/ovs/_gcc/datapath/linux' > make -C /lib/modules/4.4.0-119-generic/build > M=/home/dball/ovs/_gcc/datapath/linux > modules > make[4]: Entering directory '/usr/src/linux-headers-4.4.0-119-generic' > Building modules, stage 2. > MODPOST 6 modules > make[4]: Leaving directory '/usr/src/linux-headers-4.4.0-119-generic' > make[3]: Leaving directory '/home/dball/ovs/_gcc/datapath/linux' > make[3]: Entering directory '/home/dball/ovs/_gcc/datapath' > make[3]: Leaving directory '/home/dball/ovs/_gcc/datapath' > make[2]: Leaving directory '/home/dball/ovs/_gcc/datapath' > make[2]: Entering directory '/home/dball/ovs/_gcc' > make[3]: Entering directory '/home/dball/ovs/_gcc/datapath' > make[3]: 'distfiles' is up to date. > make[3]: Leaving directory '/home/dball/ovs/_gcc/datapath' > make[2]: Leaving directory '/home/dball/ovs/_gcc' > make[1]: Leaving directory '/home/dball/ovs/_gcc' > set /bin/bash '../tests/system-userspace-testsuite' -C tests > AUTOTEST_PATH='utilities:vswitchd:ovsdb:vtep:tests::: > ovn/controller-vtep:ovn/northd:ovn/utilities:ovn/controller' 18-22 -j1; \ > "$@" || (test X'' = Xyes && "$@" --recheck) > ## ------------------------------- ## > ## openvswitch 2.10.90 test suite. ## > ## ------------------------------- ## > > datapath-sanity > > 18: datapath - ping over gre tunnel by simulated packets FAILED ( > system-traffic.at:615) > 19: datapath - ping over erspan v1 tunnel by simulated packets FAILED ( > system-traffic.at:659) > 20: datapath - ping over erspan v2 tunnel by simulated packets FAILED ( > system-traffic.at:706) > 21: datapath - ping over ip6erspan v1 tunnel by simulated packets FAILED ( > system-traffic.at:754) > 22: datapath - ping over ip6erspan v2 tunnel by simulated packets FAILED ( > system-traffic.at:804) > > ## ------------- ## > ## Test results. ## > ## ------------- ## > > ERROR: All 5 tests were run, > 5 failed unexpectedly. > ## ------------------------------------------- ## > ## system-userspace-testsuite.log was created. ## > ## ------------------------------------------- ## > > > The kmod tests all pass now and they are a little faster now, but still > slow > > et /bin/bash '../tests/system-kmod-testsuite' -C tests > AUTOTEST_PATH='utilities:vswitchd:ovsdb:vtep:tests::: > ovn/controller-vtep:ovn/northd:ovn/utilities:ovn/controller' 18 -j1; \ > "$@" || (test X'' = Xyes && "$@" --recheck) > ## ------------------------------- ## > ## openvswitch 2.10.90 test suite. ## > ## ------------------------------- ## > 18: datapath - ping over gre tunnel by simulated packets ok > > ## ------------- ## > ## Test results. ## > ## ------------- ## > > 1 test was successful. > make[1]: Leaving directory '/home/dball/ovs/_gcc' > make: Leaving directory '/home/dball/ovs/_gcc' > > real 1m32.789s > user 0m3.396s > sys 0m0.872s > > > Thanks Darrell > > > > > > > On 8/8/18, 4:35 PM, "ovs-dev-boun...@openvswitch.org on behalf of Yifeng > Sun" <ovs-dev-boun...@openvswitch.org on behalf of pkusunyif...@gmail.com> > wrote: > > Introduce a new test that doesn't setup native gre tunnels but sends > simulated raw packets. > This test is supposed to only run for kernel version from 4.4.x to > 4.15.x. > > Signed-off-by: Yifeng Sun <pkusunyif...@gmail.com> > --- > tests/system-traffic.at | 47 ++++++++++++++++++++++++++++++ > +++++++++++++++++ > 1 file changed, 47 insertions(+) > > diff --git a/tests/system-traffic.at b/tests/system-traffic.at > index cf53c10..dca2bc8 100644 > --- a/tests/system-traffic.at > +++ b/tests/system-traffic.at > @@ -575,6 +575,53 @@ NS_CHECK_EXEC([at_ns0], [ping -s 3200 -q -c 3 -i > 0.3 -w 2 10.1.1.100 | FORMAT_PI > OVS_TRAFFIC_VSWITCHD_STOP > AT_CLEANUP > > +AT_SETUP([datapath - ping over gre tunnel by simulated packets]) > +OVS_CHECK_KERNEL(4, 4, 15) > + > +OVS_TRAFFIC_VSWITCHD_START() > + > +AT_CHECK([ovs-vsctl -- set bridge br0 other-config:hwaddr=\"f2:ff: > 00:00:00:01\"]) > +ADD_BR([br-underlay], [set bridge br-underlay > other-config:hwaddr=\"f2:ff:00:00:00:02\"]) > + > +AT_CHECK([ovs-ofctl add-flow br0 "actions=normal"]) > +AT_CHECK([ovs-ofctl add-flow br-underlay "actions=normal"]) > + > +ADD_NAMESPACES(at_ns0) > + > +dnl Set up underlay link from host into the namespace using veth pair. > +ADD_VETH(p0, at_ns0, br-underlay, "172.31.1.1/24", f2:ff:00:00:00:03) > +AT_CHECK([ip addr add dev br-underlay "172.31.1.100/24"]) > +AT_CHECK([ip link set dev br-underlay up]) > + > +dnl Set up tunnel endpoints on OVS outside the namespace. > +ADD_OVS_TUNNEL([gre], [br0], [at_gre0], [172.31.1.1], [10.1.1.100/24 > ]) > + > +ip netns exec at_ns0 tcpdump -U -i p0 -w p0.pcap & > +sleep 1 > + > +dnl First, check the underlay. > +NS_CHECK_EXEC([at_ns0], [ping -q -c 3 -i 0.3 -w 2 172.31.1.100 | > FORMAT_PING], [0], [dnl > +3 packets transmitted, 3 received, 0% packet loss, time 0ms > +]) > + > +dnl We don't actually add gretap port as below, instead, we will > +dnl emulate one that sends out packets. Suppose its mac address is > f2:ff:00:00:00:04. > +dnl ADD_NATIVE_TUNNEL([gretap], [ns_gre0], [at_ns0], [172.31.1.100], [ > 10.1.1.1/24]) > + > +dnl Now, check the overlay by sending out raw arp and icmp packets. > +ovs-ofctl -O OpenFlow13 packet-out br-underlay "in_port=1 packet= > f2ff00000002f2ff00000003080045000042ec2c4000402ff3bcac1f0101 > ac1f016400006558fffffffffffff2ff0000000408060001080006040001 > f2ff000000040a0101010000000000000a010164 actions=NORMAL" > + > +sleep 1 > +AT_CHECK([tcpdump -xx -r p0.pcap 2>&1 | egrep "IP 172.31.1.100 > > 172.31.1.1: GREv0, length 46: ARP, Reply 10.1.1.100 is-at > f2:ff:00:00:00:01 .* length 28" 2>&1 1>/dev/null]) > + > +ovs-ofctl -O OpenFlow13 packet-out br-underlay "in_port=1 packet= > f2ff00000002f2ff0000000308004500007aec8e4000402ff322ac1f0101 > ac1f016400006558f2ff00000001f2ff00000004080045000054548f4000 > 4001cfb30a0101010a0101640800e6e829270003e1a3435b00000000ff1a > 050000000000101112131415161718191a1b1c1d1e1f2021222324252627 > 28292a2b2c2d2e2f3031323334353637 actions=NORMAL" > + > +sleep 1 > +AT_CHECK([tcpdump -xx -r p0.pcap 2>&1 | egrep "IP 172.31.1.100 > > 172.31.1.1: GREv0, length 102: IP 10.1.1.100 > 10.1.1.1: ICMP echo reply, > .* length 64$" 2>&1 1>/dev/null]) > + > +OVS_TRAFFIC_VSWITCHD_STOP > +AT_CLEANUP > + > AT_SETUP([datapath - clone action]) > OVS_TRAFFIC_VSWITCHD_START() > > -- > 2.7.4 > > _______________________________________________ > dev mailing list > d...@openvswitch.org > https://na01.safelinks.protection.outlook.com/?url=https%3A%2F%2Fmail. > openvswitch.org%2Fmailman%2Flistinfo%2Fovs-dev&data= > 02%7C01%7Cdball%40vmware.com%7C153e01662c0e401c4fa008d5fd87accb% > 7Cb39138ca3cee4b4aa4d6cd83d9dd62f0%7C1%7C0%7C636693681528602321& > sdata=qKcxbM2PzEg%2BrNb61nZRScJboN%2B5a317WP4MVIlgobA%3D&reserved=0 > > > _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev