From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id EEEEE8E67 for ; Mon, 19 Oct 2015 03:37:18 +0200 (CEST) Received: from fmsmga001.fm.intel.com ([10.253.24.23]) by fmsmga103.fm.intel.com with ESMTP; 18 Oct 2015 18:37:17 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.17,699,1437462000"; d="scan'208";a="814000342" Received: from fmsmsx106.amr.corp.intel.com ([10.18.124.204]) by fmsmga001.fm.intel.com with ESMTP; 18 Oct 2015 18:37:17 -0700 Received: from fmsmsx111.amr.corp.intel.com (10.18.116.5) by FMSMSX106.amr.corp.intel.com (10.18.124.204) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 18 Oct 2015 18:37:17 -0700 Received: from shsmsx151.ccr.corp.intel.com (10.239.6.50) by fmsmsx111.amr.corp.intel.com (10.18.116.5) with Microsoft SMTP Server (TLS) id 14.3.248.2; Sun, 18 Oct 2015 18:37:17 -0700 Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.253]) by SHSMSX151.ccr.corp.intel.com ([169.254.3.47]) with mapi id 14.03.0248.002; Mon, 19 Oct 2015 09:37:15 +0800 From: "Lu, Wenzhuo" To: =?iso-8859-1?Q?N=E9lio_Laranjeiro?= Thread-Topic: RSS API discussion Thread-Index: AdEIF2Avz/LjfuSiSTGu8HlFjDp+1P//maoA//uvVJA= Date: Mon, 19 Oct 2015 01:37:14 +0000 Message-ID: <6A0DE07E22DDAD4C9103DF62FEBC0909020A0267@shsmsx102.ccr.corp.intel.com> References: <6A0DE07E22DDAD4C9103DF62FEBC09090209FB49@shsmsx102.ccr.corp.intel.com> <20151016152810.GD2594@autoinstall.dev.6wind.com> In-Reply-To: <20151016152810.GD2594@autoinstall.dev.6wind.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [10.239.127.40] Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] RSS API discussion 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: Mon, 19 Oct 2015 01:37:20 -0000 Hi N=E9lio, > -----Original Message----- > From: N=E9lio Laranjeiro [mailto:nelio.laranjeiro@6wind.com] > Sent: Friday, October 16, 2015 11:28 PM > To: Lu, Wenzhuo > Cc: dev@dpdk.org; Adrien Mazarguil; Olga Shern > Subject: Re: RSS API discussion >=20 > On Fri, Oct 16, 2015 at 01:40:00PM +0000, Lu, Wenzhuo wrote: > > Hi N=E9lio, > > > > > Hi Wenzhuo, > > > > > > We should discuss about this API for a future release of DPDK > > > because this one lacks in flexibility. Some other NICs have > > > indirection tables with a different/configurable size, and the curren= t API does > not help to manage it. > > > > > > For ConnectX-4 I have made a lot of hacks to avoid changing the DPDK > > > API, "[dpdk-dev] [PATCH 0/3] Add RETA configuration to MLX5". > > > http://dpdk.org/ml/archives/dev/2015-October/024681.html > > > > > > From a user point of view, to update the RETA table, the API expects > > > the user to know the size of it to update or query. With your > > > patchset, Intel have two indirection table sizes now, with Mellanox > > > ConnectX-4, I fixed to the size of 512 entries because it is not fixe= d by default. > > > > > > How about discussing this in a separate thread? > > Sure, I changed the tittle. > > But I'm afraid I don't catch up with you. I have 2 questions, 1, Why th= e reta > size cannot be predict on Mellanox ConnectX-4? 2, I don't understand the > meaning when you say the reta size is not fixed by default on Mellanox > ConnectX-4. > > Would you like to give more details of the Mellanox ConnectX-4's behavi= or? > It'll be helpful to understand this problem. >=20 > On Connexct-4 we can configure the indirection table size with any power = of > two up to 512 entries. >=20 > The current API only expects RETA tables size to be a multiple of > RTE_RETA_GROUP_SIZE i.e. 64. >=20 > To handle any kind of NICs, a simple array of N (RETA table size) element= s with > the data, instead of something in multiple of 64 would be easier to use, > something like: >=20 > struct rte_eth_rss_reta_entry { > uint16_t idx; /* index to query/update. */ > uint16_t reta; /* redirection value. */ }; >=20 > We should update the API to take an array of such entries plus its size. > It would also make update and query easier. Agree. We should not limit the RETA table size to be multiple of 64 in RTE.= Every NIC should check the RETA table size for itself. I think the only reason the API is realized like this is that we only suppo= rt Intel NICs before. We'd better change this API in the future release for= the sake of all kinds of NICs. >=20 > -- > N=E9lio Laranjeiro > 6WIND