From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 5360CA046B for ; Fri, 23 Aug 2019 02:52:23 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 07E871BF82; Fri, 23 Aug 2019 02:52:23 +0200 (CEST) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by dpdk.org (Postfix) with ESMTP id 4314B1BF7F for ; Fri, 23 Aug 2019 02:52:20 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga104.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 22 Aug 2019 17:52:19 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.64,419,1559545200"; d="scan'208";a="354461269" Received: from fmsmsx103.amr.corp.intel.com ([10.18.124.201]) by orsmga005.jf.intel.com with ESMTP; 22 Aug 2019 17:52:19 -0700 Received: from shsmsx106.ccr.corp.intel.com (10.239.4.159) by FMSMSX103.amr.corp.intel.com (10.18.124.201) with Microsoft SMTP Server (TLS) id 14.3.439.0; Thu, 22 Aug 2019 17:51:34 -0700 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.112]) by SHSMSX106.ccr.corp.intel.com ([169.254.10.204]) with mapi id 14.03.0439.000; Fri, 23 Aug 2019 08:51:33 +0800 From: "Wang, Yinan" To: "Ma, LihongX" , "dts@dpdk.org" CC: "Ma, LihongX" Thread-Topic: [dts] [PATCH V1] test_plan: delete the useless plan vhost_tso Thread-Index: AQHVWMhh9udzYn9scE6g09sbBfqiY6cH6DZA Date: Fri, 23 Aug 2019 00:51:32 +0000 Message-ID: References: <1566437952-20099-1-git-send-email-lihongx.ma@intel.com> In-Reply-To: <1566437952-20099-1-git-send-email-lihongx.ma@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-titus-metadata-40: eyJDYXRlZ29yeUxhYmVscyI6IiIsIk1ldGFkYXRhIjp7Im5zIjoiaHR0cDpcL1wvd3d3LnRpdHVzLmNvbVwvbnNcL0ludGVsMyIsImlkIjoiNjFmYTlkNmUtYjdjNy00MWI0LTlhYzYtOWM0OWYwZTZlZjgxIiwicHJvcHMiOlt7Im4iOiJDVFBDbGFzc2lmaWNhdGlvbiIsInZhbHMiOlt7InZhbHVlIjoiQ1RQX05UIn1dfV19LCJTdWJqZWN0TGFiZWxzIjpbXSwiVE1DVmVyc2lvbiI6IjE3LjEwLjE4MDQuNDkiLCJUcnVzdGVkTGFiZWxIYXNoIjoiaWx5am1OXC83NUpVTm1HaDhKSXVFcmJUSDhJb0VRemVXb2VKem5nM2RtOVp5NWZrNjI2XC9BT1NZRFwvUGgxN2ZhRSJ9 x-ctpclassification: CTP_NT dlp-product: dlpe-windows dlp-version: 11.2.0.6 dlp-reaction: no-action x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="iso-2022-jp" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dts] [PATCH V1] test_plan: delete the useless plan vhost_tso X-BeenThere: dts@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: test suite reviews and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dts-bounces@dpdk.org Sender: "dts" Acked-by: Wang, Yinan > -----Original Message----- > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of lihong > Sent: 2019=1B$BG/=1B(B8=1B$B7n=1B(B22=1B$BF|=1B(B 9:39 > To: dts@dpdk.org > Cc: Ma, LihongX > Subject: [dts] [PATCH V1] test_plan: delete the useless plan vhost_tso >=20 > this plan has been covered by vm2vm_virtio_net_perf and > vhost_dequeue_zero_copy, so delete it. >=20 > Signed-off-by: lihong > --- > test_plans/vhost_tso_test_plan.rst | 128 -------------------------------= ------ > 1 file changed, 128 deletions(-) > delete mode 100644 test_plans/vhost_tso_test_plan.rst >=20 > diff --git a/test_plans/vhost_tso_test_plan.rst > b/test_plans/vhost_tso_test_plan.rst > deleted file mode 100644 > index e839a7a..0000000 > --- a/test_plans/vhost_tso_test_plan.rst > +++ /dev/null > @@ -1,128 +0,0 @@ > -.. Copyright (c) <2015-2017>, Intel Corporation > - All rights reserved. > - > - Redistribution and use in source and binary forms, with or without > - modification, are permitted provided that the following conditions > - are met: > - > - - Redistributions of source code must retain the above copyright > - notice, this list of conditions and the following disclaimer. > - > - - Redistributions in binary form must reproduce the above copyright > - notice, this list of conditions and the following disclaimer in > - the documentation and/or other materials provided with the > - distribution. > - > - - Neither the name of Intel Corporation nor the names of its > - contributors may be used to endorse or promote products derived > - from this software without specific prior written permission. > - > - THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND > CONTRIBUTORS > - "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT > - LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS > - FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE > - COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, > INDIRECT, > - INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES > - (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS > OR > - SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) > - HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN > CONTRACT, > - STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) > - ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED > - OF THE POSSIBILITY OF SUCH DAMAGE. > - > -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > -Vhost TSO Tests > -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > - > -The feature enabled the DPDK Vhost TX offload(checksum and TSO), so that= it > will let the NIC to do the TX offload, and it can improve performance. Th= e feature > added the negotiation between DPDK user space vhost and virtio-net, so we= will > verify the DPDK Vhost user + virtio-net for the TSO/cksum in the TCP/IP s= tack > enabled environment. DPDK vhost + virtio-pmd will not be covered by this = plan > since virtio-pmd doesn't have TCP/IP stack and virtio TSO is not enabled,= so it will > not be tested. > - > -In the test plan, we will use vhost switch sample to test. > -When testing vm2vm case, we will only test vm2vm=3D1(software switch), n= ot test > vm2vm=3D2(hardware switch). > - > -Prerequisites > -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > - > -Install iperf on both host and guests. > - > - > -Test Case1: DPDK vhost user + virtio-net one VM fwd tso > -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D > - > -HW preparation: Connect 2 ports directly. In our case, connect 81:00.0(p= ort1) > and 81:00.1(port2) two ports directly. Port1 is bound to igb_uio for vhos= t-sample > to use, while port2 is in kernel driver. > - > -SW preparation: Change one line of the vhost sample and rebuild:: > - > - #In function virtio_tx_route(xxx) > - m->vlan_tci =3D vlan_tag; > - #changed to > - m->vlan_tci =3D 1000; > - > -1. Launch the Vhost sample by below commands, socket-mem is set for the > vhost sample to use, need ensure that the PCI port located socket has the > memory. In our case, the PCI BDF is 81:00.0, so we need assign memory for > socket1. For TSO/CSUM test, we need set "--mergeable 1--tso 1 --csum 1".:= : > - > - taskset -c 18-20 ./examples/vhost/build/vhost-switch -c 0x1c0000 -n = 4 > --huge-dir /mnt/huge --socket-mem 0,2048 -- -p 1 --mergeable 1 --zero-cop= y 0 > --vm2vm 0 --tso 1 --csum 1 > - > -2. Launch VM1:: > - > - taskset -c 21-22 \ > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 1024 -object > memory-backend-file,id=3Dmem,size=3D1024M,mem-path=3D/mnt/huge,share=3Don > -numa node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/img/dpdk-vm1.img \ > - -chardev > socket,id=3Dchar0,path=3D/home/qxu10/vhost-tso-test/dpdk/vhost-net -netde= v > type=3Dvhost-user,id=3Dmynet1,chardev=3Dchar0,vhostforce \ > - -device > virtio-net-pci,mac=3D52:54:00:00:00:01,netdev=3Dmynet1,csum=3Don,gso=3Don= ,guest_cs > um=3Don,guest_tso4=3Don,guest_tso6=3Don,guest_ecn=3Don \ > - -netdev tap,id=3Dipvm1,ifname=3Dtap3,script=3D/etc/qemu-ifup -devic= e > rtl8139,netdev=3Dipvm1,id=3Dnet0,mac=3D00:10:00:00:11:01 -nographic > - > -3. On host,configure port2, then you can see there is a interface called > ens260f1.1000.:: > - > - ifconfig ens260f1 > - vconfig add ens260f1 1000 > - ifconfig ens260f1.1000 1.1.1.8 > - > -4. On the VM1, set the virtio IP and run iperf:: > - > - ifconfig ethX 1.1.1.2 > - ping 1.1.1.8 # let virtio and port2 can ping each other successfully= , then the > arp table will be set up automatically. > - > -5. In host, run : `iperf -s -i 1` ; In guest, run `iperf -c 1.1.1.2 -i 1= -t 60`, check if > there is 64K (size: 65160) packet. If there is 64K packet, then TSO is en= abled, or > else TSO is disabled. > - > -6. On the VM1, run `tcpdump -i ethX -n -e -vv` to check if the cksum is = correct. > You should not see incorrect cksum output. > - > -Test Case2: DPDK vhost user + virtio-net VM2VM=3D1 fwd tso > -=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D > - > -1. Launch the Vhost sample by below commands, socket-mem is set for the > vhost sample to use, need ensure that the PCI port located socket has the > memory. In our case, the PCI BDF is 81:00.0, so we need assign memory for > socket1. For TSO/CSUM test, we need set "--mergeable 1--tso 1 --csum 1 > --vm2vm 1".:: > - > - taskset -c 18-20 ./examples/vhost/build/vhost-switch -c 0x1c0000 -n = 4 > --huge-dir /mnt/huge --socket-mem 0,2048 -- -p 1 --mergeable 1 --zero-cop= y 0 > --vm2vm 1 --tso 1 --csum 1 > - > -2. Launch VM1 and VM2. :: > - > - taskset -c 21-22 \ > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 1024 -object > memory-backend-file,id=3Dmem,size=3D1024M,mem-path=3D/mnt/huge,share=3Don > -numa node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/img/dpdk-vm1.img \ > - -chardev > socket,id=3Dchar0,path=3D/home/qxu10/vhost-tso-test/dpdk/vhost-net -netde= v > type=3Dvhost-user,id=3Dmynet1,chardev=3Dchar0,vhostforce \ > - -device > virtio-net-pci,mac=3D52:54:00:00:00:01,netdev=3Dmynet1,csum=3Don,gso=3Don= ,guest_cs > um=3Don,guest_tso4=3Don,guest_tso6=3Don,guest_ecn=3Don \ > - -netdev tap,id=3Dipvm1,ifname=3Dtap3,script=3D/etc/qemu-ifup -devic= e > rtl8139,netdev=3Dipvm1,id=3Dnet0,mac=3D00:10:00:00:11:01 -nographic > - > - taskset -c 23-24 \ > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 1024 -object > memory-backend-file,id=3Dmem,size=3D1024M,mem-path=3D/mnt/huge,share=3Don > -numa node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/img/vm1.img \ > - -chardev > socket,id=3Dchar1,path=3D/home/qxu10/vhost-tso-test/dpdk/vhost-net -netde= v > type=3Dvhost-user,id=3Dmynet2,chardev=3Dchar1,vhostforce \ > - -device virtio-net-pci,mac=3D52:54:00:00:00:02,netdev=3Dmynet2 \ > - -netdev tap,id=3Dipvm1,ifname=3Dtap4,script=3D/etc/qemu-ifup -devic= e > rtl8139,netdev=3Dipvm1,id=3Dnet0,mac=3D00:10:00:00:11:02 -nographic > - > -3. On VM1, set the virtio IP and run iperf:: > - > - ifconfig ethX 1.1.1.2 > - arp -s 1.1.1.8 52:54:00:00:00:02 > - arp # to check the arp table is complete and correct. > - > -4. On VM2, set the virtio IP and run iperf:: > - > - ifconfig ethX 1.1.1.8 > - arp -s 1.1.1.2 52:54:00:00:00:01 > - arp # to check the arp table is complete and correct. > - > -5. Ensure virtio1 can ping virtio2. Then in VM1, run : `iperf -s -i 1` ;= In VM2, run > `iperf -c 1.1.1.2 -i 1 -t 60`, check if there is 64K (size: 65160) packet= . If there is 64K > packet, then TSO is enabled, or else TSO is disabled. > - > -6. On the VM1, run `tcpdump -i ethX -n -e -vv`. > -- > 2.7.4