From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id E4BFEA0566; Tue, 10 Mar 2020 15:47:58 +0100 (CET) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id C12D51BF96; Tue, 10 Mar 2020 15:47:58 +0100 (CET) Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id B387E1BF7F for ; Tue, 10 Mar 2020 15:47:56 +0100 (CET) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga001.jf.intel.com ([10.7.209.18]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 10 Mar 2020 07:47:55 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.70,518,1574150400"; d="scan'208,217";a="321824926" Received: from vmedvedk-mobl.ger.corp.intel.com (HELO [10.237.220.123]) ([10.237.220.123]) by orsmga001.jf.intel.com with ESMTP; 10 Mar 2020 07:47:54 -0700 To: Andrzej Ostruszka , dev@dpdk.org, Bruce Richardson Cc: stephen@networkplumber.org References: <20200303125345.26317-1-aostruszka@marvell.com> <20200310091326.5017-1-aostruszka@marvell.com> From: "Medvedkin, Vladimir" Message-ID: <7e4bf509-ba36-a148-b080-a7b71118a508@intel.com> Date: Tue, 10 Mar 2020 14:47:53 +0000 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:68.0) Gecko/20100101 Thunderbird/68.5.0 MIME-Version: 1.0 In-Reply-To: <20200310091326.5017-1-aostruszka@marvell.com> Content-Language: en-US Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] [PATCH v2] lpm6: make IPv6 addresses immutable X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list 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 10/03/2020 09:13, Andrzej Ostruszka wrote: > None of the public functions modify IPv6 address passed. So their > parameters are made const - with the exception of bulk functions. > This exception is due to compatibility problems - some compilers report > problems with const-casting of array of arrays. > > Previously only lookup and add were updated to have addresses passed as > const so I'm adding this fixline. > > Fixes: d82927d2f81d ("lpm6: make IPv6 address immutable") > Cc: stephen@networkplumber.org > > Signed-off-by: Andrzej Ostruszka > --- > > V2 changes: > ----------- > * reverted changes to the bulk functions and modified commit message to > reflect that > > --- > lib/librte_lpm/rte_lpm6.c | 6 +++--- > lib/librte_lpm/rte_lpm6.h | 6 +++--- > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/lib/librte_lpm/rte_lpm6.c b/lib/librte_lpm/rte_lpm6.c > index d515600f1..1047efa8a 100644 > --- a/lib/librte_lpm/rte_lpm6.c > +++ b/lib/librte_lpm/rte_lpm6.c > @@ -1019,8 +1019,8 @@ rte_lpm6_lookup_bulk_func(const struct rte_lpm6 *lpm, > * Look for a rule in the high-level rules table > */ > int > -rte_lpm6_is_rule_present(struct rte_lpm6 *lpm, uint8_t *ip, uint8_t depth, > - uint32_t *next_hop) > +rte_lpm6_is_rule_present(struct rte_lpm6 *lpm, const uint8_t *ip, uint8_t depth, > + uint32_t *next_hop) > { > uint8_t masked_ip[RTE_LPM6_IPV6_ADDR_SIZE]; > > @@ -1290,7 +1290,7 @@ remove_tbl(struct rte_lpm6 *lpm, struct rte_lpm_tbl8_hdr *tbl_hdr, > * Deletes a rule > */ > int > -rte_lpm6_delete(struct rte_lpm6 *lpm, uint8_t *ip, uint8_t depth) > +rte_lpm6_delete(struct rte_lpm6 *lpm, const uint8_t *ip, uint8_t depth) > { > uint8_t masked_ip[RTE_LPM6_IPV6_ADDR_SIZE]; > struct rte_lpm6_rule lsp_rule_obj; > diff --git a/lib/librte_lpm/rte_lpm6.h b/lib/librte_lpm/rte_lpm6.h > index 042991f8c..f96f3372e 100644 > --- a/lib/librte_lpm/rte_lpm6.h > +++ b/lib/librte_lpm/rte_lpm6.h > @@ -113,8 +113,8 @@ rte_lpm6_add(struct rte_lpm6 *lpm, const uint8_t *ip, uint8_t depth, > * 1 if the rule exists, 0 if it does not, a negative value on failure > */ > int > -rte_lpm6_is_rule_present(struct rte_lpm6 *lpm, uint8_t *ip, uint8_t depth, > - uint32_t *next_hop); > +rte_lpm6_is_rule_present(struct rte_lpm6 *lpm, const uint8_t *ip, uint8_t depth, > + uint32_t *next_hop); > > /** > * Delete a rule from the LPM table. > @@ -129,7 +129,7 @@ rte_lpm6_is_rule_present(struct rte_lpm6 *lpm, uint8_t *ip, uint8_t depth, > * 0 on success, negative value otherwise > */ > int > -rte_lpm6_delete(struct rte_lpm6 *lpm, uint8_t *ip, uint8_t depth); > +rte_lpm6_delete(struct rte_lpm6 *lpm, const uint8_t *ip, uint8_t depth); > > /** > * Delete a rule from the LPM table. Acked-by: Vladimir Medvedkin -- Regards, Vladimir