From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <yskoh@mellanox.com>
Received: from EUR01-HE1-obe.outbound.protection.outlook.com
 (mail-he1eur01on0046.outbound.protection.outlook.com [104.47.0.46])
 by dpdk.org (Postfix) with ESMTP id 09A1DCF80
 for <dev@dpdk.org>; Fri, 17 Mar 2017 18:19:31 +0100 (CET)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Mellanox.com;
 s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version;
 bh=o2Fo+QLcjq3yK6f4qbDUnALNMHhGfKmZlX97U5akjHY=;
 b=Zld7HQTlO9nv2CmUNWX489tQ3wQT6ZN3bGGYscoEA+RiM634oqaRn8w9OaKE9H2PXDJUpamOi2JclNuAENvdsBvrQdrw5PqUdG84UMDUNr02I0oodzK42hLtmAjObPPgn661ExrmsqOZrDiRDS0VzCx/6jgK6q9iF/xt81RrCTk=
Authentication-Results: intel.com; dkim=none (message not signed)
 header.d=none;intel.com; dmarc=none action=none header.from=mellanox.com;
Received: from mtidpdk.mti.labs.mlnx (12.250.235.110) by
 VI1PR0501MB2463.eurprd05.prod.outlook.com (10.168.136.14) with Microsoft SMTP
 Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id
 15.1.961.17; Fri, 17 Mar 2017 17:19:28 +0000
Date: Fri, 17 Mar 2017 10:19:09 -0700
From: Yongseok Koh <yskoh@mellanox.com>
To: <ferruh.yigit@intel.com>, <thomas.monjalon@6wind.com>
CC: <dev@dpdk.org>, <adrien.mazarguil@6wind.com>, <nelio.laranjeiro@6wind.com>
Message-ID: <20170317171908.GG530@mtidpdk.mti.labs.mlnx>
References: <20170316224056.19685-1-yskoh@mellanox.com>
 <20170316224056.19685-2-yskoh@mellanox.com>
MIME-Version: 1.0
Content-Type: text/plain; charset="us-ascii"
Content-Disposition: inline
In-Reply-To: <20170316224056.19685-2-yskoh@mellanox.com>
User-Agent: Mutt/1.7.2 (2016-11-26)
X-Originating-IP: [12.250.235.110]
X-ClientProxiedBy: MWHPR2201CA0008.namprd22.prod.outlook.com (10.174.164.21)
 To VI1PR0501MB2463.eurprd05.prod.outlook.com (10.168.136.14)
X-MS-Office365-Filtering-Correlation-Id: 66739030-aab2-423d-31a0-08d46d59c53b
X-MS-Office365-Filtering-HT: Tenant
X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001)(48565401081);
 SRVR:VI1PR0501MB2463; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2463;
 3:rhsV2RiL5OJK4YScOhvRtHzKFIRm/kT+hBqo0z8Ixkz6XtKq8Rq/0qGSzNPee5aUyXIJHCdc4th19X0ygU1Vcmi7ffXJaiyAb4bp80WS1wpVBEnsrdu/pMUmX50mHS+i9AV9rJOX82B12qB0LtCmzc81LhKcWL58WlNGPT9B29+mK0cwEj61YHC7X3dqZf3KZnCgLOyO5zo9G9KaLuvwmMGqGKbbIyqTmG9Lh09Dec+ElqlonD8DMqX/uPc8tiZE6KLN0gAUiOuA6IDa/q3DLTaYOGoOXrawr5ZW39aKCWc=;
 25:94vohAlyLwSDCHC3ZqjIeNhrp4bDAh3iBqgWH5HizhzGb3ULpwSKB9cWX+7v/0zrtoCEMZLcKVDcFwp+BWLmB9oR3/jaHxhC8euX3BkpxSunTBNPupYUt2wSy2arwnvZEjGEHqDZyuHSmtKvksnLOJmzknWoxK9yGB/3aSh8AC44IXbXBtykKR455LyaljH9pg339HJloFs0nzpD3SfmJzWUXYtOgP4i0LjkojnCetItcpquZJanpi2I7SrdAYJi72pITY/eTVpEy28EbICAO5UQio468VtAU8VCaxrcPHrcy0CwXnHn9EOgzSF+SViO1r5Q03OB6xgwXFppM0SOTEyEUyFVBp4mKDulY4eUry/dccXMScHHHDCE6haIxw7D1yfiUmT7nZdJXw7j8TKBMXcpinsETQHqJJZZAUPyxqF1zLxQPFiZhLeBLImeHhEWhzsFADYcn5PytN0J/g+6nw==
X-LD-Processed: a652971c-7d2e-4d9b-a6a4-d149256f461b,ExtAddr
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2463;
 31:QD6rnhb+bKpaBYyZ4TdcfiqrFmW2n0LZWyL61yd+c/QqdyA+si6oHGPTu0b4HXlzjQnqGmnlqaKhfL5N7LjILShAKD5xfxVSuMM3HK3xsdDmfcCa2n3S9Yq4ub2PFRQ3plzI4ucDxqjL/Ata4IQ/Ydri56hUBQxGy9IAgtWGP9LqJvMNP3r2rIFr9dNHOzCb/cnEruH7Am+7u66MllXC5DyH/z05u+egbQmnog8WPUcSV7no9oNoVtpL8o/AkW6r;
 20:azZfPU4Kj6dv/erM8/VJ8R7Lw0qn0ll9OBF3tjsFbMndXbDLm0+e1IvtdMWa24o72WRLHshubSXY2VTXiMWAXR4a1j94v1Apw4AK3kOg8kshEce6dA0vIfC5H5DrT6UgQ0N5rl2snWpij7K6OVsxqXmHkfIkhwI1QLhxcUPrOpwQar8fNL4TQqfeOK2h8MOpV7pplTgA43lqaAKyVaKsEyomgMmOzldxbEcTQ8UP1IxFp8Q8hJQnDKDpkbwUSKUHX/INN4879zcnwKQ0syPEm4z6wcyEmJaoEZpRtx0CfB96fAxQjla7g1Ar/AgNmeFQU4TIkcD4GkkQMWh7ATNqJUHDIEKI2TlT+FB0/VY9YixiGVyzsz5J6cSwKn5tMxN4gRL5dEtKQWSD5Xokd517JSAauZusy5uxjiOaKObtOHoTUCGx0tb4+JXmLcGhbmQqgURVTQAAgYPII0Tt4bbvc3H0ShSkdyMkxwFDJWMsnVcjgfcaPrtNL6F3DLOXsnJt
X-Microsoft-Antispam-PRVS: <VI1PR0501MB2463DE8414DB092C841F079EC3390@VI1PR0501MB2463.eurprd05.prod.outlook.com>
X-Exchange-Antispam-Report-Test: UriScan:;
X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0;
 RULEID:(6040375)(601004)(2401047)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6041248)(20161123564025)(20161123558025)(20161123560025)(20161123562025)(20161123555025)(6072148);
 SRVR:VI1PR0501MB2463; BCL:0; PCL:0; RULEID:; SRVR:VI1PR0501MB2463; 
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2463;
 4:ALmb5Dz3Lxnj0AET3PbrOLB95PJ/g6zM/4hVInWoJnKb2o9I3xHCRzgm2xvKR2WldmHQlF5ZTHoaNv6pRFddMOp/dNKyxGa4GGAnFqvaPXEP3qqMc73OQ9rYu9/IjDavmnhd36GfLj0thiIuar0aVerebvuXdEmBjcgY3GmQhbuZGwVxXQq4i64o/tTX+/cSkuh2L72gg8n70mGjgUb6RkFyMsLyl3jK3UR5dhfddfkx9lLIO8XPPPOozQEjbGmO6w9qmYuFwVD6xm3VJdiXxSRJHv2o6YOoGqbKbVHbAj/EIBqnlMzJeqhf8nFsGPsFi9wmZ9x8TlorIJZ3tWoHIvfVgBAuFvX8euM/u3kJL3j7cLIAsCHvEKgX8YTvSLTG70tLuSdv8a+r1tVAT4AV58M2n2vdLwI0I62CdEL+Z9hUkrsOIBjqkrVxBJisE5KYwC5pdiwUfM8/ltoEy0/tgLJh0DgCEvQXSlc2+789BfUzFyBHj04jRokmz7wtbtb3es2Lvv8yScy+OJmRZirIqtzVDNiHT5OgK2YDS8fuzPAORFwZcJEMJ7Ba8JN/8ykLA8rpeZb1G9I67lHqHgqYqdS8XIsWnVbAfT5sqbno6dJg4RThIFc6239WBfw94yG/
X-Forefront-PRVS: 0249EFCB0B
X-Forefront-Antispam-Report: SFV:NSPM;
 SFS:(10009020)(4630300001)(6009001)(39450400003)(39410400002)(39840400002)(39850400002)(39860400002)(24454002)(54906002)(25786008)(8676002)(4326008)(55016002)(6246003)(9686003)(23726003)(3846002)(53936002)(6116002)(38730400002)(189998001)(46406003)(50466002)(4001350100001)(305945005)(33656002)(6506006)(229853002)(83506001)(2950100002)(47776003)(66066001)(97756001)(5660300001)(6666003)(42186005)(575784001)(86362001)(1076002)(2906002)(7736002)(76176999)(50986999)(54356999)(81166006)(18370500001);
 DIR:OUT; SFP:1101; SCL:1; SRVR:VI1PR0501MB2463; H:mtidpdk.mti.labs.mlnx; FPR:;
 SPF:None; MLV:sfv; LANG:en; 
X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; VI1PR0501MB2463;
 23:lTKXqSslO7D/48XHZkck8PGnyDiqDOixDSSRo5f?=
 =?us-ascii?Q?E8Jztn0yLnjZmeaaWxil0ffNfUnOxHJVHHvCYXYbmIRGryvNLzmLDV4If/gd?=
 =?us-ascii?Q?O1wkitkrx6hOanp3gWcqQfCd/J+2ArAxHYFk4YaJQgHfp5eyKX7cpuitgm/3?=
 =?us-ascii?Q?f4BNonjKSlnMob5lCib5IlBAMGmUncr4JYpfUs+H2xv/ED70n8Ef01GdKEb8?=
 =?us-ascii?Q?YQPK6MAECrT/txDx6WzHGP7BmOPATPkWtUx8zgeBKXneo3ucV4SDme+1Qjur?=
 =?us-ascii?Q?lHOC8lwgjRiVk3vNfWztN6ZpEYFl0J/53A4ZlQ+FEYByHTc8PfoinCAceEfw?=
 =?us-ascii?Q?KL5M/bX9k7kq49YSdTKSGxaO00KVtO0cYd+cECd7U239YKpP6wottVL7OyNo?=
 =?us-ascii?Q?c1OSj9Nj2nmwKnpFn6gpOHUFe9cr42WWhPzCmjKkcud62bHLE0YJenIOLFvs?=
 =?us-ascii?Q?wFCbh9mBtVrO/xXoR9MoR9PULt2eBjm4QyPnRJywUGcSSE8ZCuuoErS9VymC?=
 =?us-ascii?Q?caXfdeSrcZoFfH4BJzrYczqqG0C5qQ76Ar+YEVzmMbVHCwUdOMCF1+kAckuh?=
 =?us-ascii?Q?jaUAqo/qKTF2Od+bq/M1vXGh+sUhscBT7kLHKGYIGv9Tcpd7ltBDkwhn0WD9?=
 =?us-ascii?Q?ylx+EDPxvI96sLt2l2IYzoZU+Kf0lIYPzqCz4Zwi54FqiKE37heRYmg39pw2?=
 =?us-ascii?Q?HOqlCtnUNUPZkSievU92BEtx9XRzlRZq4AU3Vu1qqDoALFkmHkNZxShy5LEI?=
 =?us-ascii?Q?c7mNCDTP2pkKHPq11tyliEUKj55LkvOSk3CYPk8EvvZWrbBEftbBOMNgNbUu?=
 =?us-ascii?Q?61lFU0duIhSjQEvSdKs29ZdNiz+/KItXGxBJPMadDvfgXeizv5rVR22GSU5O?=
 =?us-ascii?Q?hwJlrN4/JySeBGhThvYyxZJIoqkLtS9KhnyVHE4xcIMVlJBf+hVq40L/KQv9?=
 =?us-ascii?Q?aLQ4rqzbYD1xvbtp7M2+88aU/IjMcL5X3YCZMGkAJENGWA6g+eeO99uAGnMN?=
 =?us-ascii?Q?QHSaW5ZkU6mk52R0QKbdPrtTMRIwQLlLjhmhUUdH82LxWoA8JEvHsHlYU1uP?=
 =?us-ascii?Q?nOT7MBJU8gzi0Kl62KnJ9Nl9asq0iv8FOjiOr03OHgUNFVSdGSy4cIFVdo3A?=
 =?us-ascii?Q?4kdYKpu1hKPn+haz54GpUh8NTEsS3hmB3zrrzT0zV3RxZFKf1txrYqw=3D?=
 =?us-ascii?Q?=3D?=
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2463;
 6:p9SPCHlygsjMAE6zHWUZBeBVaSeRYW6M/h220XzKbrH2KFF4GAVts0y3KHqRTU7engbCoR2i6iWoU1X7bPk3DxEgUl+o56GxQL9k1eBDwotf3g0/fYwmhnXku9tJ0eyugoabzqTPORLPmAvN9b9JBpVj8B7YGBgyS4qGmD/Ay3CH7JTX12Co6TwmqZvhSgoHKuLzNku4MzsKtN7WzDxZ4b5ItjP50xZE/CiiCk2R72qAk8wrAT8GiEjLMLNsbz31gMTMYHMF2eK7Z/BuciO1Wx+c7bel/ckCRGQT7d76Rdl0VS3xJmR7/kVrkV7sem+V2xZdBLCNJlFy3YfxtUq8hgmjw7GjwNFtit61gKm8r3JRs+dt/iPJVM+DteMv4U56ua2W4b+mVBwH1N2O8Umliy8AAIKJZDZUE9wZ4p7f+1A=;
 5:UVah8nRoS6+layBU028Pay6p6yGsVrNqj0JNFN5yNRlJ22jgYlrsURfvZXt6doouZT30C5zv98aUhPLVhKdo8l+PWxY3y4nQAhDKKtGYtw00fYNLG09218RdJGoNv+mGhbeo6Sg8N2ztNLUVXqKrIw==;
 24:uPMrO30xVpHI7jfsP8hWgfX7S/h3b5JKgj/gGfi0LxLGy3D9i9Ng5Cp7MDsq7Yedflsg15VtwRKkUehpFNVHzEXr1jPazqw7NwYHbYc4pGY=
SpamDiagnosticOutput: 1:99
SpamDiagnosticMetadata: NSPM
X-Microsoft-Exchange-Diagnostics: 1; VI1PR0501MB2463;
 7:3fG7h85mkMYtcZmLYSzJGeumZy5leaWnMAEZkVOxYlsTHgUr68VgviEzAMdHmxSHL7k0hw7am5PukSTOrXATWdc6bBfnyDXq5BSa9QErMPu//robBxephc6xUD5qvh4ynLd9/c4EWG23xpmRsT8L6GD5cc01rPt2pF/LSVLYxqcaQeTvQNuatwrnMtosmGMORlfDs/pUhtgKvUKfMl01nbd7ZIrXrvnQceRpY+g61DJqyC8zgrCW5VuKy2YXewIzRjaeX1vlBAR0QjZnRtzFqgHCExRrn4cFy0n5CWJ/dCLSs54oyh9AODdvp7llQh8eKZqTTgwLs1zGZPQIo0N89Q==
X-OriginatorOrg: Mellanox.com
X-MS-Exchange-CrossTenant-OriginalArrivalTime: 17 Mar 2017 17:19:28.1289 (UTC)
X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted
X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR0501MB2463
Subject: Re: [dpdk-dev] [PATCH 1/3] lib/librte_ether: remove requirement of
 aligned RETA size
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: DPDK patches and discussions <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Fri, 17 Mar 2017 17:19:31 -0000

On Thu, Mar 16, 2017 at 03:40:54PM -0700, Yongseok Koh wrote:
> In rte_eth_check_reta_mask(), it is required to align the size of the RETA
> table to RTE_RETA_GROUP_SIZE but as the size can be less than the limit,
> this should be removed. The change is also applied to a command of testpmd.
> 
> Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
> ---
>  app/test-pmd/cmdline.c        | 4 +++-
>  lib/librte_ether/rte_ethdev.c | 8 +-------
>  2 files changed, 4 insertions(+), 8 deletions(-)
> 
> diff --git a/app/test-pmd/cmdline.c b/app/test-pmd/cmdline.c
> index 47f935d20..463a77e5a 100644
> --- a/app/test-pmd/cmdline.c
> +++ b/app/test-pmd/cmdline.c
> @@ -2063,7 +2063,9 @@ showport_parse_reta_config(struct rte_eth_rss_reta_entry64 *conf,
>  	char s[256];
>  	char *end;
>  	char *str_fld[8];
> -	uint16_t i, num = nb_entries / RTE_RETA_GROUP_SIZE;
> +	uint16_t i;
> +	uint16_t num = (nb_entries + RTE_RETA_GROUP_SIZE - 1) /
> +			RTE_RETA_GROUP_SIZE;
>  	int ret;
>  
>  	p = strchr(p0, '(');
> diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
> index eb0a94a9a..806fff6ec 100644
> --- a/lib/librte_ether/rte_ethdev.c
> +++ b/lib/librte_ether/rte_ethdev.c
> @@ -1935,13 +1935,7 @@ rte_eth_check_reta_mask(struct rte_eth_rss_reta_entry64 *reta_conf,
>  	if (!reta_conf)
>  		return -EINVAL;
>  
> -	if (reta_size != RTE_ALIGN(reta_size, RTE_RETA_GROUP_SIZE)) {
> -		RTE_PMD_DEBUG_TRACE("Invalid reta size, should be %u aligned\n",
> -							RTE_RETA_GROUP_SIZE);
> -		return -EINVAL;
> -	}
> -
> -	num = reta_size / RTE_RETA_GROUP_SIZE;
> +	num = (reta_size + RTE_RETA_GROUP_SIZE - 1) / RTE_RETA_GROUP_SIZE;
>  	for (i = 0; i < num; i++) {
>  		if (reta_conf[i].mask)
>  			return 0;
> -- 
> 2.11.0
> 

I'm sorry, I forgot to include the maintainer of librte_ether, Thomas.

Thanks,
Yongseok