From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga01.intel.com (mga01.intel.com [192.55.52.88]) by dpdk.org (Postfix) with ESMTP id 1AB99804B for ; Fri, 12 Dec 2014 07:49:16 +0100 (CET) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga101.fm.intel.com with ESMTP; 11 Dec 2014 22:49:03 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.07,561,1413270000"; d="scan'208";a="646493946" Received: from pgsmsx108.gar.corp.intel.com ([10.221.44.103]) by fmsmga002.fm.intel.com with ESMTP; 11 Dec 2014 22:48:16 -0800 Received: from shsmsx103.ccr.corp.intel.com (10.239.4.69) by PGSMSX108.gar.corp.intel.com (10.221.44.103) with Microsoft SMTP Server (TLS) id 14.3.195.1; Fri, 12 Dec 2014 14:48:15 +0800 Received: from shsmsx104.ccr.corp.intel.com ([169.254.5.182]) by SHSMSX103.ccr.corp.intel.com ([169.254.4.240]) with mapi id 14.03.0195.001; Fri, 12 Dec 2014 14:48:13 +0800 From: "Zhang, XiaonanX" To: "De Lara Guarch, Pablo" , "dev@dpdk.org" , "Cao, Waterman" , Thomas Monjalon Thread-Topic: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf Thread-Index: AQHQFWVNM8x5SpwpuEqDNdmQ09nEs5yKzhwAgACwySA= Date: Fri, 12 Dec 2014 06:48:12 +0000 Message-ID: <63FB47D6C0357E428AA804B2C89068BA0127998B@SHSMSX104.ccr.corp.intel.com> References: <1418317690-10151-1-git-send-email-pablo.de.lara.guarch@intel.com> In-Reply-To: Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: yes X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 12 Dec 2014 06:49:21 -0000 Tested-by: Xiaonan Zhang - Tested Commit: Pablo - OS: Fedora20 3.15.8-200.fc20.x86_64 - GCC: gcc version 4.8.3 20140624 - CPU: Intel(R) Xeon(R) CPU E5-2680 v2 @ 2.80GHz - NIC: Intel Corporation 82599ES 10-Gigabit SFI/SFP+ Network Connection [80= 86:10fb] - Default x86_64-native-linuxapp-gcc configuration - Total 6 cases, 6 passed, 0 failed - Test Environment setup - Topology #1: Create 2VMs (Fedora 20, 64bit);for each VM, pass through one= physical port(Niantic 82599) to VM, and also create one virtual device: vm= xnet3 in VM. Between two VMs, use one vswitch to connect 2 vmxnet3. In summ= ary, PF1=20 and vmxnet3A are in VM1; PF2 and vmxnet3B are in VM2.The tra= ffic flow for l2fwd/l3fwd is as below: =20 Ixia -> PF1 -> vmxnet3A -> vswitch -> vmxnet3B -> PF2 -> Ixi= a.=20 - Topology #2: Create 1VM (Fedora 20, 64bit), on this VM, created 2 vmxnet3= , called vmxnet3A, vmxnet3B; create 2 vswitch, vswitchA connecting PF1 and = vmxnet3A, while vswitchB connecting PF2 and vmxnet3B. The traffic flow is a= s below: Ixia -> PF1 -> vswitchA -> vmxnet3A -> vmxnet3B -> vswitchB = -> PF2 -> Ixia. - Test Case1: L2fwd with Topology#1=20 Description: Set up topology#1(in prerequisite session), and bind PF1, PF= 2, Vmxnet3A, vmxnet3B to DPDK poll-mode driver (igb_uio). Increase the flow at line rate (uni-directional traffic), se= nd the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes= , 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate t= o see =20 if any unexpected behavior, such as no receives after N pack= ets.=20 Command / instruction: To run the l2fwd example in 2VMs: ./build/l2fwd -c f -n 4 -- -p 0x3 - Test IXIA Flow prerequisite: Ixia port1 sends 5 packets to PF1, and the f= low should have PF1's MAC as destination MAC. Check if ixia port2 have rece= ived the 5 packets. Expected test result: Passed - Test Case2: L3fwd-VF with Topology#1 Description: Set up topology#1(in prerequisite session), and bind PF1, PF= 2, Vmxnet3A, vmxnet3B to DPDK poll-mode driver (igb_uio) Increase the flow at line rate (uni-directional traffic), se= nd the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes= , 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate t= o see =20 if any unexpected behavior, such as no receives after N pack= ets. Command / instruction: To run the l3fwd-vf example in 2VMs: ./build/l3fwd-vf -c 0x6 -n 4 -- -p 0x3 --co= nfig "(0,0,1),(1,0,2)" - Test IXIA Flow prerequisite: Ixia port1 sends 5 packets to PF1, and the f= low should have PF1's MAC as destination MAC and have 2.1.1.x as destinatio= n IP. Check if ixia port2 have received the 5 packets. Expected test result: Passed - Test Case3: L2fwd with Topology#2 Description: Set up topology#2(in prerequisite session), and bind vmxnet3= A and vmxnet3B to DPDK poll-mode driver (igb_uio). Increase the flow at line rate (uni-directional traffic), se= nd the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes= , 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate t= o see =20 if any unexpected behavior, such as no receives after N pack= ets. Command / instruction: To run the l2fwd example in VM1: ./build/l2fwd -c f -n 4 -- -p 0x3 - Test IXIA Flow prerequisite: Ixia port1 sends 5 packets to port0 (vmxnet3= A), and the flow should have port0's MAC as destination MAC. Check if ixia = port2 have received the 5 packets. Similar things need to be done at ixia p= ort2. Expected test result: Passed - Test Case4: L3fwd-VF with Topology#2 Description: Set up topology#2(in prerequisite session), and bind vmxnet3= A and vmxnet3B to DPDK poll-mode driver (igb_uio). =20 Increase the flow at line rate (uni-directional traffic), se= nd the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes= , 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate t= o see =20 if any unexpected behavior, such as no receives after N pack= ets. Command / instruction: To run the l3fwd-vf example in VM1: ./build/l3fwd-vf -c 0x6 -n 4 -- -p 0x3 --co= nfig "(0,0,1),(1,0,2)" - Test IXIA Flow prerequisite: Ixia port1 sends 5 packets to port0(vmxnet3A= ), and the flow should have port0's MAC as destination MAC and have 2.1.1.x= as destination IP. Check if ixia port2 have received the 5 packets. Expected test result: Passed - Test Case5: Timer test with Topology#2 Description: Set up topology#2(in prerequisite session), and bind vmxnet3= A and vmxnet3B to DPDK poll-mode driver (igb_uio). Command / instruction: Build timer sample and run the sample: ./build/timer -c f -n 4 - Test IXIA Flow prerequisite: N.A. =09 Expected test result: Passed - Test Case6: Testpmd basic with Topology#2 Description: Set up topology#2(in prerequisite session), and bind vmxnet3= A and vmxnet3B to DPDK poll-mode driver (igbuio). Increase the flow at line rate (uni-directional traffic), se= nd the flow at different packet size (64bytes, 128bytes, 256bytes, 512bytes= , 1024bytes, 1280bytes and 1518bytes) and check the received packets/rate t= o see =20 if any unexpected behavior, such as no receives after N pack= ets. Command / instruction: Run testpmd(e.g:/x86_64-native-linuxapp-gcc/app/testpmd) wi= th below command lines: ./testpmd -c f -n 4 -- --txqflags=3D0xf01 -= i Clean environment and start the forwarding. Need check the port infor= mation and clear port statics by using below commands: Testpmd>show port info all Testpmd>clear port stats all Testpmd>show port stats all Testpmd>set fwd mac Testpmd>start - Test IXIA Flow prerequisite: N.A. Expected test result: Passed -----Original Message----- From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of De Lara Guarch, Pablo Sent: Friday, December 12, 2014 3:57 AM To: De Lara Guarch, Pablo; dev@dpdk.org Subject: Re: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf > -----Original Message----- > From: dev [mailto:dev-bounces@dpdk.org] On Behalf Of Pablo de Lara > Sent: Thursday, December 11, 2014 5:08 PM > To: dev@dpdk.org > Cc: root > Subject: [dpdk-dev] [PATCH] vmxnet3: set txq_flags in default TX conf >=20 > Since commit fbde27f19ab8f "get default Rx/Tx configuration from dev info= ", > a default RX/TX configuration can be used for all PMDs. > In case of vmxnet3, the whole structure was zeroed and not filled out. > The PMD does not support multi segments or offload functions, > so txq_flags should have those flags set. >=20 > Signed-off-by: root Self-NACK. Wrong signed-off. > --- > lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c | 3 +++ > 1 files changed, 3 insertions(+), 0 deletions(-) >=20 > diff --git a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c > b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c > index 963a8a5..ef0af16 100644 > --- a/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c > +++ b/lib/librte_pmd_vmxnet3/vmxnet3_ethdev.c > @@ -642,6 +642,9 @@ > vmxnet3_dev_info_get(__attribute__((unused))struct rte_eth_dev *dev, > struct rte_ > dev_info->min_rx_bufsize =3D 1518 + RTE_PKTMBUF_HEADROOM; > dev_info->max_rx_pktlen =3D 16384; /* includes CRC, cf MAXFRS > register */ > dev_info->max_mac_addrs =3D VMXNET3_MAX_MAC_ADDRS; > + > + dev_info->default_txconf.txq_flags =3D > ETH_TXQ_FLAGS_NOMULTSEGS | > + > ETH_TXQ_FLAGS_NOOFFLOADS; > } >=20 > /* return 0 means link status changed, -1 means not changed */ > -- > 1.7.4.1