From mboxrd@z Thu Jan 1 00:00:00 1970 From: Pavan Nikhilesh Bhagavatula Subject: Re: [PATCH v3 1/5] librte_table: fix acl entry add and delete functions Date: Thu, 31 Aug 2017 20:39:56 +0530 Message-ID: <20170831150954.GA10284@PBHAGAVATULA-LT> References: <1503677438-27591-1-git-send-email-bernard.iremonger@intel.com> <1504191287-11349-2-git-send-email-bernard.iremonger@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Cc: dev@dpdk.org To: Bernard Iremonger Return-path: Received: from NAM03-BY2-obe.outbound.protection.outlook.com (mail-by2nam03on0040.outbound.protection.outlook.com [104.47.42.40]) by dpdk.org (Postfix) with ESMTP id 4A70B968 for ; Thu, 31 Aug 2017 17:10:20 +0200 (CEST) Content-Disposition: inline In-Reply-To: <1504191287-11349-2-git-send-email-bernard.iremonger@intel.com> List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" On Thu, Aug 31, 2017 at 03:54:43PM +0100, Bernard Iremonger wrote: Hi Bernard, Few suggestions inline. > The rte_table_acl_entry_add() function was returning data from > acl_memory instead of acl_rule_memory. It was also returning data > from entry instead of entry_ptr. > > The rte_table_acl_entry_delete() function was returning data from > acl_memory instead of acl_rule_memory. > > Fixes: 166923eb2f78 ("table: ACL") > Cc: stable@dpdk.org > Signed-off-by: Bernard Iremonger > --- > lib/librte_table/rte_table_acl.c | 9 ++++----- > 1 file changed, 4 insertions(+), 5 deletions(-) > > diff --git a/lib/librte_table/rte_table_acl.c b/lib/librte_table/rte_table_acl.c > index 3c05e4a..e84b437 100644 > --- a/lib/librte_table/rte_table_acl.c > +++ b/lib/librte_table/rte_table_acl.c > @@ -316,8 +316,7 @@ struct rte_table_acl { > if (status == 0) { > *key_found = 1; > *entry_ptr = &acl->memory[i * acl->entry_size]; > - memcpy(*entry_ptr, entry, acl->entry_size); > - > + memcpy(entry, *entry_ptr, acl->entry_size); > return 0; > } > } > @@ -353,8 +352,8 @@ struct rte_table_acl { > rte_acl_free(acl->ctx); > acl->ctx = ctx; > *key_found = 0; > - *entry_ptr = &acl->memory[free_pos * acl->entry_size]; > - memcpy(*entry_ptr, entry, acl->entry_size); > + *entry_ptr = &acl->acl_rule_memory[free_pos * acl->entry_size]; > + memcpy(entry, *entry_ptr, acl->entry_size); > Why not use rte_memcpy instead?. > return 0; > } > @@ -435,7 +434,7 @@ struct rte_table_acl { > acl->ctx = ctx; > *key_found = 1; > if (entry != NULL) > - memcpy(entry, &acl->memory[pos * acl->entry_size], > + memcpy(entry, &acl->acl_rule_memory[pos * acl->entry_size], > acl->entry_size); > > return 0; > -- > 1.9.1 > -Pavan