From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from userp1040.oracle.com (userp1040.oracle.com [156.151.31.81]) by dpdk.org (Postfix) with ESMTP id 685672BFD for ; Thu, 24 Mar 2016 18:35:44 +0100 (CET) Received: from userv0022.oracle.com (userv0022.oracle.com [156.151.31.74]) by userp1040.oracle.com (Sentrion-MTA-4.3.2/Sentrion-MTA-4.3.2) with ESMTP id u2OHZhpr023409 (version=TLSv1.2 cipher=ECDHE-RSA-AES256-GCM-SHA384 bits=256 verify=OK); Thu, 24 Mar 2016 17:35:43 GMT Received: from aserv0122.oracle.com (aserv0122.oracle.com [141.146.126.236]) by userv0022.oracle.com (8.14.4/8.13.8) with ESMTP id u2OHZgpT011384 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK); Thu, 24 Mar 2016 17:35:43 GMT Received: from abhmp0015.oracle.com (abhmp0015.oracle.com [141.146.116.21]) by aserv0122.oracle.com (8.13.8/8.13.8) with ESMTP id u2OHZem8016506; Thu, 24 Mar 2016 17:35:41 GMT Received: from [10.197.178.155] (/10.197.178.155) by default (Oracle Beehive Gateway v4.0) with ESMTP ; Thu, 24 Mar 2016 10:35:39 -0700 Mime-Version: 1.0 (Mac OS X Mail 9.2 \(3112\)) From: Michael Frasca In-Reply-To: <4341B239C0EFF9468EE453F9E9F4604D04465361@shsmsx102.ccr.corp.intel.com> Date: Thu, 24 Mar 2016 13:35:38 -0400 Cc: "dev@dpdk.org" Message-Id: <06A5CC0C-D767-48CD-B82D-C4C81AD282AE@oracle.com> References: <1458665888-4577-1-git-send-email-michael.frasca@oracle.com> <4341B239C0EFF9468EE453F9E9F4604D04464381@shsmsx102.ccr.corp.intel.com> <8634D5E0-C1B2-4194-B9A4-E0BDC982B36B@oracle.com> <4341B239C0EFF9468EE453F9E9F4604D04465361@shsmsx102.ccr.corp.intel.com> To: "Chen, Jing D" X-Mailer: Apple Mail (2.3112) X-Source-IP: userv0022.oracle.com [156.151.31.74] 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] fm10k: conditionally disable RSS during device initialization 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: Thu, 24 Mar 2016 17:35:45 -0000 Jing, Thanks for your assistance. The experiment that you have built should = allow you to observe the bug. In [5], I would expect that queue 0 receives roughly = 1/4 of the packets that you sending, assuming the input packets have varied IP addresses. Can you measure what % of packets are actually being received = in this single queue setup (after first running a 4-queue setup)? When trying to running with only one RX queue, the fm10k retains the = same RSS hash function and redirection table that was configured from a previous = run. As a result, some packets are still being directed to other receive queues. = I have confirmed this by polling the queue specific stats, which I retrieved = via rte_eth_xstats_get(). Looking at fm10k_dev_rss_configure(), one should see that there is no modification of fm10k registers when nb_rx_queues =3D=3D 1. As far as I = can tell, this is the reason that only a certain partition of packets are being = receive in a single queue setup (after first running a multi-queue configuration). I am unable to access my development environment today, but if you need, = I can later craft a patch to l3fwd that shows the measurement of packets = received at each queue. Thanks, Mike > On Mar 24, 2016, at 2:40 AM, Chen, Jing D = wrote: >=20 > Hi, Frasca, >=20 >=20 >=20 >> -----Original Message----- >> From: Michael Frasca [mailto:michael.frasca@oracle.com = ] >> Sent: Wednesday, March 23, 2016 9:43 PM >> To: Chen, Jing D >> Cc: dev@dpdk.org >> Subject: Re: [PATCH] fm10k: conditionally disable RSS during device >> initialization >>=20 >> Hi Jing, >>=20 >> I ran into this issue while trying to run experiments with different = RSS >> configurations (no RSS being one cases). It is not clear to me that = setting this >> register to zero is the best way to disable RSS. >>=20 >> After digging further, I have a theory that I'm having this issues = because I've >> only attached my DPDK application to SR-IOV ports. In >> fm10k_dev_dglort_map_configure(), I see that 'RSS Length' is set for = the >> DGLORT >> decoder. However, it appears that this is only invoked for physical = functions. >>=20 >> Could this be my problem? Is it required that I bind to the physical = function >> if I want to properly manipulate RSS? >>=20 >> Thanks, >> Mike >>=20 > I don't know exactly what problem you ran into. I think we needn't = worry about=20 > those DGLORT setting when using VF device. >=20 > I've followed steps to use SRIOV device with RSS enabled and disabled, = both > are worked well from my side after applying your patch. Below is my = setup. >=20 > 1. PF with Linux driver "fm10k-next_0.19.3". > 2. DPDK with latest code from master branch, apply your patch. > 3. Use 1 VF device created by kernel driver. > 4. use l3fwd with " ./examples/l3fwd/build/l3fwd -c fc -n 4 -- -p 0x1 = --config=3D"(0,0,2),(0,1,2),(0,2,3),(0,3,3)"" > with RSS enabled. After sending packets, I can see all 4 queues = received packets. > 5. use l3fwd with " ./examples/l3fwd/build/l3fwd -c fc -n 4 -- -p 0x1 = --config=3D"(0,0,2)"" > with RSS disabled. After sending packets, I can see queue 0 = received packets. >=20 > Can you explain what actual problem is? > We can talk offline.