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 C0062A0352; Wed, 6 May 2020 05:15:02 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B64D71D679; Wed, 6 May 2020 05:15:02 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id F029C1D5E5 for ; Wed, 6 May 2020 05:15:00 +0200 (CEST) IronPort-SDR: yizR0Gve0TaGhDUpRxny5ttHDusGhlbpuvXsXN9xnFVKL+Jj1C05VK0xXzNAAUP1v/2Jv1H0xh dqNryE8scFgQ== X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by orsmga105.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 05 May 2020 20:14:57 -0700 IronPort-SDR: PVpvAZC40vRRMNv7qTLrKr69e+Mn5yT6Z2A5CtN9prghGoll+wrUJtI/OH1HuoKZ4Vw01IQAhU daaoTMcRpoYg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.73,357,1583222400"; d="scan'208";a="434727854" Received: from fmsmsx105.amr.corp.intel.com ([10.18.124.203]) by orsmga005.jf.intel.com with ESMTP; 05 May 2020 20:14:56 -0700 Received: from fmsmsx113.amr.corp.intel.com (10.18.116.7) by FMSMSX105.amr.corp.intel.com (10.18.124.203) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 5 May 2020 20:14:53 -0700 Received: from shsmsx152.ccr.corp.intel.com (10.239.6.52) by FMSMSX113.amr.corp.intel.com (10.18.116.7) with Microsoft SMTP Server (TLS) id 14.3.439.0; Tue, 5 May 2020 20:14:52 -0700 Received: from shsmsx101.ccr.corp.intel.com ([169.254.1.225]) by SHSMSX152.ccr.corp.intel.com ([169.254.6.77]) with mapi id 14.03.0439.000; Wed, 6 May 2020 11:14:50 +0800 From: "Tu, Lijuan" To: "Wang, Yinan" , "dts@dpdk.org" CC: "Wang, Yinan" Thread-Topic: [dts] [PATCH v1] test_plans: update commonds to support vectorized cases in vm2vm_virtio_pmd_test_plan.rst Thread-Index: AQHWHckJmX4CJ9FYqUmxeBQpqTVQ+qiabWog Date: Wed, 6 May 2020 03:14:48 +0000 Message-ID: <8CE3E05A3F976642AAB0F4675D0AD20E0BC21DBE@SHSMSX101.ccr.corp.intel.com> References: <20200428184709.68154-1-yinan.wang@intel.com> In-Reply-To: <20200428184709.68154-1-yinan.wang@intel.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: 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="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dts] [PATCH v1] test_plans: update commonds to support vectorized cases in vm2vm_virtio_pmd_test_plan.rst 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" Applied, thanks > -----Original Message----- > From: dts [mailto:dts-bounces@dpdk.org] On Behalf Of Yinan > Sent: Wednesday, April 29, 2020 2:47 AM > To: dts@dpdk.org > Cc: Wang, Yinan > Subject: [dts] [PATCH v1] test_plans: update commonds to support > vectorized cases in vm2vm_virtio_pmd_test_plan.rst >=20 > From: Wang Yinan >=20 > Signed-off-by: Wang Yinan > --- > test_plans/vm2vm_virtio_pmd_test_plan.rst | 391 +++++++++++++++------- > 1 file changed, 267 insertions(+), 124 deletions(-) >=20 > diff --git a/test_plans/vm2vm_virtio_pmd_test_plan.rst > b/test_plans/vm2vm_virtio_pmd_test_plan.rst > index 06c76b8..11daaab 100644 > --- a/test_plans/vm2vm_virtio_pmd_test_plan.rst > +++ b/test_plans/vm2vm_virtio_pmd_test_plan.rst > @@ -34,8 +34,9 @@ > vm2vm vhost-user/virtio-pmd test plan > =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 >=20 > -This test plan includes vm2vm vhost-user/virtio-pmd(0.95) > mergeable ,normal and vector_rx path test, and vm2vm vhost/virtio-pmd(1.0= ) > mergeable, -normal and vector_rx path test. Specially, two mergeable path > test check the payload of each packets are valid by using pdump. > +This test plan includes vm2vm mergeable, normal and vector_rx path test > +with virtio 0.95 and virtio 1.0, also add mergeable and normal path > +test with virtio 1.1. Specially, three mergeable path cases check the pa= yload > of each packets are valid by using pdump. >=20 > Prerequisites > =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D > @@ -67,31 +68,37 @@ Test Case 1: VM2VM vhost-user/virtio-pmd with > vector_rx path >=20 > 2. Launch VM1 and VM2, mrg_rxbuf=3Doff to disable mergeable:: >=20 > - qemu-system-x86_64 -name us-vhost-vm0 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-1.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6004-:22 \ > - -chardev socket,id=3Dchar0,path=3D./vhost-net0 -netdev type=3Dvhost= - > user,id=3Dmynet1,chardev=3Dchar0,vhostforce \ > - -device virtio-net- > pci,mac=3D52:54:00:00:00:01,netdev=3Dmynet1,mrg_rxbuf=3Doff,csum=3Don,gso= =3Don, > guest_csum=3Don,host_tso4=3Don,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :12 -daemonize > - > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-2.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6005-:22 \ > - -chardev socket,id=3Dchar1,path=3D./vhost-net1 -netdev type=3Dvhost= - > user,id=3Dmynet2,chardev=3Dchar1,vhostforce \ > - -device virtio-net- > pci,mac=3D52:54:00:00:00:02,netdev=3Dmynet2,mrg_rxbuf=3Doff,csum=3Don,gso= =3Don, > guest_csum=3Don,host_tso4=3Don,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :11 -daemonize > - > -3. On VM1, bind vdev with igb_uio driver,then run testpmd, set rxonly fo= r > virtio1:: > - > - ./testpmd -c 0x3 -n 4 -- -i --txd=3D1024 --rxd=3D1024 > + qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6002-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net0 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:01,disable-modern= =3Dtru > + > e,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Do= n,gue > st > + _ecn=3Don -vnc :10 > + > + qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910-2.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net1 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:02,disable-modern= =3Dtru > + > e,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Do= n,gue > st > + _ecn=3Don -vnc :12 > + > +3. On VM1, bind vdev with igb_uio driver,then run testpmd, set rxonly fo= r > virtio1, [0000:xx.00] is [Bus,Device,Function] of virtio-net:: > + > + ./testpmd -c 0x3 -n 4 -w 0000:xx.00,vectorized=3D1 -- -i --txd=3D102= 4 > + --rxd=3D1024 > testpmd>set fwd rxonly > testpmd>start >=20 > -4. On VM2, bind vdev with igb_uio driver,then run testpmd, set txonly fo= r > virtio2 and send 64B packets:: > +4. On VM2, bind vdev with igb_uio driver,then run testpmd, set txonly fo= r > virtio2 and send 64B packets, [0000:xx.00] is [Bus,Device,Function] of vi= rtio- > net:: >=20 > - ./testpmd -c 0x3 -n 4 -- -i --txd=3D1024 --rxd=3D1024 > + ./testpmd -c 0x3 -n 4 -w 0000:xx.00,vectorized=3D1 -- -i --txd=3D102= 4 > + --rxd=3D1024 > testpmd>set fwd txonly > testpmd>set txpkts 64 > testpmd>start tx_first 32 > @@ -116,21 +123,27 @@ Test Case 2: VM2VM vhost-user/virtio-pmd with > normal path >=20 > 2. Launch VM1 and VM2, mrg_rxbuf=3Doff to disable mergeable:: >=20 > - qemu-system-x86_64 -name us-vhost-vm0 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-1.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6004-:22 \ > - -chardev socket,id=3Dchar0,path=3D./vhost-net0 -netdev type=3Dvhost= - > user,id=3Dmynet1,chardev=3Dchar0,vhostforce \ > - -device virtio-net- > pci,mac=3D52:54:00:00:00:01,netdev=3Dmynet1,mrg_rxbuf=3Doff,csum=3Don,gso= =3Don, > guest_csum=3Don,host_tso4=3Don,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :12 -daemonize > - > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-2.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6005-:22 \ > - -chardev socket,id=3Dchar1,path=3D./vhost-net1 -netdev type=3Dvhost= - > user,id=3Dmynet2,chardev=3Dchar1,vhostforce \ > - -device virtio-net- > pci,mac=3D52:54:00:00:00:02,netdev=3Dmynet2,mrg_rxbuf=3Doff,csum=3Don,gso= =3Don, > guest_csum=3Don,host_tso4=3Don,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :11 -daemonize > + qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6002-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net0 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:01,disable-modern= =3Dtru > + > e,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Do= n,gue > st > + _ecn=3Don -vnc :10 > + > + qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910-2.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net1 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:02,disable-modern= =3Dtru > + > e,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Do= n,gue > st > + _ecn=3Don -vnc :12 >=20 > 3. On VM1, bind vdev with igb_uio driver,then run testpmd, set rxonly fo= r > virtio1 :: >=20 > @@ -165,31 +178,37 @@ Test Case 3: VM2VM vhost-user/virtio1.0-pmd > with vector_rx path >=20 > 2. Launch VM1 and VM2, note add "disable-modern=3Dfalse" to enable virti= o > 1.0:: >=20 > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-1.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6004-:22 \ > - -chardev socket,id=3Dchar0,path=3D./vhost-net0 -netdev type=3Dvhost= - > user,id=3Dmynet1,chardev=3Dchar0,vhostforce \ > - -device virtio-net-pci,mac=3D52:54:00:00:00:01,netdev=3Dmynet1,disa= ble- > modern=3Dfalse,mrg_rxbuf=3Doff,csum=3Don,gso=3Don,guest_csum=3Don,host_ts= o4=3Do > n,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :12 -daemonize > - > - qemu-system-x86_64 -name us-vhost-vm2 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-2.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6005-:22 \ > - -chardev socket,id=3Dchar1,path=3D./vhost-net1 -netdev type=3Dvhost= - > user,id=3Dmynet2,chardev=3Dchar1,vhostforce \ > - -device virtio-net-pci,mac=3D52:54:00:00:00:02,netdev=3Dmynet2,disa= ble- > modern=3Dfalse,mrg_rxbuf=3Doff,csum=3Don,gso=3Don,guest_csum=3Don,host_ts= o4=3Do > n,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :11 -daemonize > - > -3. On VM1, bind vdev with igb_uio driver,then run testpmd, set rxonly fo= r > virtio1 :: > - > - ./testpmd -c 0x3 -n 4 -- -i --txd=3D1024 --rxd=3D1024 > + qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6002-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net0 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:01,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3D= on,gu > es > + t_ecn=3Don -vnc :10 > + > + qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910-2.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net1 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:02,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3D= on,gu > es > + t_ecn=3Don -vnc :12 > + > +3. On VM1, bind vdev with igb_uio driver,then run testpmd, set rxonly fo= r > virtio1, [0000:xx.00] is [Bus,Device,Function] of virtio-net:: > + > + ./testpmd -c 0x3 -n 4 -w 0000:xx.00,vectorized=3D1 -- -i --txd=3D102= 4 > + --rxd=3D1024 > testpmd>set fwd rxonly > testpmd>start >=20 > -4. On VM2, bind vdev with igb_uio driver,then run testpmd, set txonly fo= r > virtio2 :: > +4. On VM2, bind vdev with igb_uio driver,then run testpmd, set txonly fo= r > virtio2, [0000:xx.00] is [Bus,Device,Function] of virtio-net:: >=20 > - ./testpmd -c 0x3 -n 4 -- -i --txd=3D1024 --rxd=3D1024 > + ./testpmd -c 0x3 -n 4 -w 0000:xx.00,vectorized=3D1 -- -i --txd=3D102= 4 > + --rxd=3D1024 > testpmd>set fwd txonly > testpmd>set txpkts 64 > testpmd>start tx_first 32 > @@ -214,21 +233,27 @@ Test Case 4: VM2VM vhost-user/virtio1.0-pmd > with normal path >=20 > 2. Launch VM1 and VM2, note add "disable-modern=3Dfalse" to enable virti= o > 1.0:: >=20 > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-1.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6004-:22 \ > - -chardev socket,id=3Dchar0,path=3D./vhost-net0 -netdev type=3Dvhost= - > user,id=3Dmynet1,chardev=3Dchar0,vhostforce \ > - -device virtio-net-pci,mac=3D52:54:00:00:00:01,netdev=3Dmynet1,disa= ble- > modern=3Dfalse,mrg_rxbuf=3Doff,csum=3Don,gso=3Don,guest_csum=3Don,host_ts= o4=3Do > n,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :12 -daemonize > - > - qemu-system-x86_64 -name us-vhost-vm2 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-2.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6005-:22 \ > - -chardev socket,id=3Dchar1,path=3D./vhost-net1 -netdev type=3Dvhost= - > user,id=3Dmynet2,chardev=3Dchar1,vhostforce \ > - -device virtio-net-pci,mac=3D52:54:00:00:00:02,netdev=3Dmynet2,disa= ble- > modern=3Dfalse,mrg_rxbuf=3Doff,csum=3Don,gso=3Don,guest_csum=3Don,host_ts= o4=3Do > n,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :11 -daemonize > + qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6002-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net0 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:01,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3D= on,gu > es > + t_ecn=3Don -vnc :10 > + > + qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910-2.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net1 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:02,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3D= on,gu > es > + t_ecn=3Don -vnc :12 >=20 > 3. On VM1, bind vdev with igb_uio driver,then run testpmd, set rxonly fo= r > virtio1 :: >=20 > @@ -262,21 +287,27 @@ Test Case 5: VM2VM vhost-user/virtio-pmd > mergeable path with payload valid check >=20 > 2. Launch VM1 and VM2, mrg_rxbuf=3Don to enable mergeable path:: >=20 > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-1.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6004-:22 \ > - -chardev socket,id=3Dchar0,path=3D./vhost-net0 -netdev type=3Dvhost= - > user,id=3Dmynet1,chardev=3Dchar0,vhostforce \ > - -device virtio-net- > pci,mac=3D52:54:00:00:00:01,netdev=3Dmynet1,mrg_rxbuf=3Don,csum=3Don,gso= =3Don, > guest_csum=3Don,host_tso4=3Don,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :12 -daemonize > - > - qemu-system-x86_64 -name us-vhost-vm2 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16.img \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > - -chardev socket,id=3Dchar1,path=3D./vhost-net1 -netdev type=3Dvhost= - > user,id=3Dmynet2,chardev=3Dchar1,vhostforce \ > - -device virtio-net- > pci,mac=3D52:54:00:00:00:02,netdev=3Dmynet2,mrg_rxbuf=3Don,csum=3Don,gso= =3Don, > guest_csum=3Don,host_tso4=3Don,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :11 -daemonize > + qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6002-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net0 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:01,disable-modern= =3Dtru > + > e,mrg_rxbuf=3Don,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Don= ,gues > t_ > + ecn=3Don -vnc :10 > + > + qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910-2.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net1 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:02,disable-modern= =3Dtru > + > e,mrg_rxbuf=3Don,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Don= ,gues > t_ > + ecn=3Don -vnc :12 >=20 > 3. On VM1, enable pcap lib in dpdk code and recompile:: >=20 > @@ -344,21 +375,27 @@ Test Case 6: VM2VM vhost-user/virtio1.0-pmd > mergeable path with payload valid ch >=20 > 2. Launch VM1 and VM2, mrg_rxbuf=3Don to enable mergeable path:: >=20 > - qemu-system-x86_64 -name us-vhost-vm1 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16-1.img= \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6004-:22 \ > - -chardev socket,id=3Dchar0,path=3D./vhost-net0 -netdev type=3Dvhost= - > user,id=3Dmynet1,chardev=3Dchar0,vhostforce \ > - -device virtio-net-pci,mac=3D52:54:00:00:00:01,netdev=3Dmynet1,disa= ble- > modern=3Dfalse,mrg_rxbuf=3Don,csum=3Don,gso=3Don,guest_csum=3Don,host_tso= 4=3Don > ,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :12 -daemonize > - > - qemu-system-x86_64 -name us-vhost-vm2 \ > - -cpu host -enable-kvm -m 2048 -object memory-backend- > file,id=3Dmem,size=3D2048M,mem-path=3D/mnt/huge,share=3Don -numa > node,memdev=3Dmem -mem-prealloc \ > - -smp cores=3D2,sockets=3D1 -drive file=3D/home/osimg/ubuntu16.img \ > - -monitor unix:/tmp/vm2_monitor.sock,server,nowait -net > nic,vlan=3D2,macaddr=3D00:00:00:08:e8:aa,addr=3D1f -net > user,vlan=3D2,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > - -chardev socket,id=3Dchar1,path=3D./vhost-net1 -netdev type=3Dvhost= - > user,id=3Dmynet2,chardev=3Dchar1,vhostforce \ > - -device virtio-net-pci,mac=3D52:54:00:00:00:02,netdev=3Dmynet2,disa= ble- > modern=3Dfalse,mrg_rxbuf=3Don,csum=3Don,gso=3Don,guest_csum=3Don,host_tso= 4=3Don > ,guest_tso4=3Don,guest_ecn=3Don \ > - -vnc :11 -daemonize > + qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6002-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net0 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:01,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Don,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Do= n,gue > st > + _ecn=3Don -vnc :10 > + > + qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910-2.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net1 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:02,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Don,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Do= n,gue > st > + _ecn=3Don -vnc :12 >=20 > 3. On VM1, enable pcap lib in dpdk code and recompile:: >=20 > @@ -415,39 +452,145 @@ Test Case 6: VM2VM vhost-user/virtio1.0-pmd > mergeable path with payload valid ch >=20 > 12. Check payload is correct in each dumped packets. >=20 > -Test Case 7: vm2vm vhost-user/virtio1.1-pmd mergeable path test with > payload check - > =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=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 > +Test Case 7: VM2VM vhost-user/virtio1.1-pmd mergeable path with > payload > +valid check > +=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=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 >=20 > -1. Launch testpmd by below command:: > +1. Bind virtio with igb_uio driver, launch the testpmd by below commands= :: >=20 > - rm -rf vhost-net* > - ./testpmd -l 1-2 -n 4 --socket-mem 1024,1024 --no-pci \ > - --vdev 'eth_vhost0,iface=3Dvhost-net,queues=3D1' --vdev > 'eth_vhost1,iface=3Dvhost-net1,queues=3D1' -- \ > - -i --nb-cores=3D1 --txd=3D1024 --rxd=3D1024 > + ./testpmd -c 0xc0000 -n 4 --socket-mem 2048,2048 --legacy-mem > + --no-pci --file-prefix=3Dvhost --vdev > + 'net_vhost0,iface=3Dvhost-net0,queues=3D1' --vdev > + 'net_vhost1,iface=3Dvhost-net1,queues=3D1' -- -i --nb-cores=3D1 --txd= =3D1024 > + --rxd=3D1024 > testpmd>set fwd mac > testpmd>start >=20 > -2. Launch virtio-user1 by below command:: > +2. Launch VM1 and VM2, mrg_rxbuf=3Don to enable mergeable path:: > + > + qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6002-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net0 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:01,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Don,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Do= n,gue > st > + _ecn=3Don,packed=3Don -vnc :10 > + > + qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910-2.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net1 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:02,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Don,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3Do= n,gue > st > + _ecn=3Don,packed=3Don -vnc :12 > + > +3. On VM1, enable pcap lib in dpdk code and recompile:: > + > + diff --git a/config/common_base b/config/common_base > + index 6b96e0e80..0f7d22f22 100644 > + --- a/config/common_base > + +++ b/config/common_base > + @@ -492,7 +492,7 @@ CONFIG_RTE_LIBRTE_PMD_NULL=3Dy > + # > + # Compile software PMD backed by PCAP files > + # > + -CONFIG_RTE_LIBRTE_PMD_PCAP=3Dn > + +CONFIG_RTE_LIBRTE_PMD_PCAP=3Dy >=20 > - ./testpmd -n 4 -l 7-8 --socket-mem 1024,1024 \ > - --no-pci --file-prefix=3Dvirtio1 \ > - --vdev=3Dnet_virtio_user1,mac=3D00:01:02:03:04:05,path=3D./vhost- > net1,queues=3D1,packed_vq=3D1,mrg_rxbuf=3D1,in_order=3D0 \ > - -- -i --nb-cores=3D1 --txd=3D1024 --rxd=3D1024 --max-pkt-len=3D9600 > +4. Bind virtio with igb_uio driver,then run testpmd, set rxonly mode for > virtio-pmd on VM1:: > + > + ./testpmd -c 0x3 -n 4 --file-prefix=3Dtest -- -i --txd=3D1024 > + --rxd=3D1024 --max-pkt-len=3D9600 > testpmd>set fwd rxonly > testpmd>start >=20 > -3. Attach pdump secondary process to primary process by same file-prefix= :: > +5. Bootup pdump in VM1:: >=20 > - ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=3Dvirti= o1 -- -- > pdump 'device_id=3Dnet_virtio_user1,queue=3D*,rx-dev=3D/root/pdump- > rx.pcap,mbuf-size=3D8000' > + ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=3Dtest = -- -- > pdump 'port=3D0,queue=3D*,rx-dev=3D/root/pdump-rx.pcap,mbuf-size=3D8000' >=20 > -4. Launch virtio-user0 and send 8k length packets:: > +6. On VM2, bind virtio with igb_uio driver,then run testpmd, config > tx_packets to 8k length with chain mode:: >=20 > - ./testpmd -n 4 -l 5-6 --socket-mem 1024,1024 \ > - --no-pci --file-prefix=3Dvirtio \ > - --vdev=3Dnet_virtio_user0,mac=3D00:01:02:03:04:05,path=3D./vhost- > net,queues=3D1,packed_vq=3D1,mrg_rxbuf=3D1,in_order=3D0 \ > - -- -i --nb-cores=3D1 --txd=3D1024 --rxd=3D1024 --max-pkt-len=3D9600 > + ./testpmd -c 0x3 -n 4 -- -i --txd=3D1024 --rxd=3D1024 --max-pkt-len= =3D9600 > + testpmd>set fwd mac > testpmd>set txpkts 2000,2000,2000,2000 > + > +7. Send ten packets from virtio-pmd on VM2:: > + > testpmd>set burst 1 > testpmd>start tx_first 10 >=20 > -5. Check payload is correct in each dumped packets. > +8. Check payload is correct in each dumped packets. > + > +9. Relaunch testpmd in VM1:: > + > + ./testpmd -c 0x3 -n 4 --file-prefix=3Dtest -- -i --txd=3D1024 --rxd= =3D1024 > + testpmd>set fwd rxonly > + testpmd>start > + > +10. Bootup pdump in VM1:: > + > + ./x86_64-native-linuxapp-gcc/app/dpdk-pdump -v --file-prefix=3Dtest = -- -- > pdump 'port=3D0,queue=3D*,rx-dev=3D/root/pdump-rx-small.pcap' > + > +11. Relaunch testpmd On VM2, send ten 64B packets from virtio-pmd on > VM2:: > + > + ./testpmd -c 0x3 -n 4 -- -i --txd=3D1024 --rxd=3D1024 --max-pkt-len= =3D9600 > + testpmd>set fwd mac > + testpmd>set burst 1 > + testpmd>start tx_first 10 > + > +12. Check payload is correct in each dumped packets. > + > +Test Case 8: VM2VM vhost-user/virtio1.1-pmd with normal path > +=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=3D=3D=3D=3D > + > +1. Bind one physical nic port to igb_uio, then launch the testpmd by bel= ow > commands:: > + > + rm -rf vhost-net* > + ./testpmd -c 0xc0000 -n 4 --socket-mem 2048,2048 --legacy-mem --no-p= ci > --file-prefix=3Dvhost --vdev 'net_vhost0,iface=3Dvhost-net0,queues=3D1' -= -vdev > 'net_vhost1,iface=3Dvhost-net1,queues=3D1' -- -i --nb-cores=3D1 --txd=3D= 1024 -- > rxd=3D1024 > + testpmd>set fwd mac > + testpmd>start > + > +2. Launch VM1 and VM2, note add "disable-modern=3Dfalse" to enable virti= o > 1.0:: > + > + qemu-system-x86_64 -name vm1 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6002-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net0 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:01,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3D= on,gu > es > + t_ecn=3Don,packed=3Don -vnc :10 > + > + qemu-system-x86_64 -name vm2 -enable-kvm -cpu host -smp 4 -m 4096 \ > + -object memory-backend-file,id=3Dmem,size=3D4096M,mem- > path=3D/mnt/huge,share=3Don \ > + -numa node,memdev=3Dmem -mem-prealloc -drive > file=3D/home/osimg/ubuntu1910-2.img \ > + -chardev socket,path=3D/tmp/vm2_qga0.sock,server,nowait,id=3Dvm2_qga= 0 - > device virtio-serial \ > + -device virtserialport,chardev=3Dvm2_qga0,name=3Dorg.qemu.guest_agen= t.2 > -daemonize \ > + -monitor unix:/tmp/vm2_monitor.sock,server,nowait -device > e1000,netdev=3Dnttsip1 \ > + -netdev user,id=3Dnttsip1,hostfwd=3Dtcp:127.0.0.1:6003-:22 \ > + -chardev socket,id=3Dchar0,path=3D./vhost-net1 \ > + -netdev type=3Dvhost-user,id=3Dnetdev0,chardev=3Dchar0,vhostforce \ > + -device > + virtio-net-pci,netdev=3Dnetdev0,mac=3D52:54:00:00:00:02,disable-modern= =3Dfal > + > se,mrg_rxbuf=3Doff,csum=3Don,guest_csum=3Don,host_tso4=3Don,guest_tso4=3D= on,gu > es > + t_ecn=3Don,packed=3Don -vnc :12 > + > +3. On VM1, bind vdev with igb_uio driver,then run testpmd, set rxonly fo= r > virtio1 :: > + > + ./testpmd -c 0x3 -n 4 -- -i --tx-offloads=3D0x00 --enable-hw-vlan-st= rip -- > txd=3D1024 --rxd=3D1024 > + testpmd>set fwd rxonly > + testpmd>start > + > +4. On VM2, bind vdev with igb_uio driver,then run testpmd, set txonly fo= r > virtio2 :: > + > + ./testpmd -c 0x3 -n 4 -- -i --tx-offloads=3D0x00 --enable-hw-vlan-st= rip -- > txd=3D1024 --rxd=3D1024 > + testpmd>set fwd txonly > + testpmd>set txpkts 64 > + testpmd>start tx_first 32 > + > +5. Check the performance at vhost testpmd to see the tx/rx rate with 64B > packet size:: > + > + testpmd>show port stats all > + xxxxx > + Throughput (since last show) > + RX-pps: xxx > + TX-pps: xxx > \ No newline at end of file > -- > 2.17.1