From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH 2/3] devargs: delay freeing previous devargs when overriding them Date: Mon, 05 Nov 2018 08:30:31 +0100 Message-ID: <4545148.O9CyC7tLm6@xps> References: <20181105070447.67700-1-dariusz.stojaczyk@intel.com> <20181105070447.67700-2-dariusz.stojaczyk@intel.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7Bit Cc: dev@dpdk.org To: Darek Stojaczyk Return-path: Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by dpdk.org (Postfix) with ESMTP id 8F75C559A for ; Mon, 5 Nov 2018 08:30:34 +0100 (CET) In-Reply-To: <20181105070447.67700-2-dariusz.stojaczyk@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" Hi, 05/11/2018 08:04, Darek Stojaczyk: > -int __rte_experimental > -rte_devargs_insert(struct rte_devargs *da) > +void __rte_experimental > +rte_devargs_insert(struct rte_devargs *da, struct rte_devargs **prev_da) You should update the API section of the release notes. > { > - int ret; > + struct rte_devargs *d; > + void *tmp; > + > + *prev_da = NULL; > + TAILQ_FOREACH_SAFE(d, &devargs_list, next, tmp) { > + if (strcmp(d->bus->name, da->bus->name) == 0 && > + strcmp(d->name, da->name) == 0) { > + TAILQ_REMOVE(&devargs_list, d, next); > + *prev_da = d; > + break; > + } > + } > > - ret = rte_devargs_remove(da); > - if (ret < 0) > - return ret; Why not updating rte_devargs_remove instead of duplicating its code?