From mboxrd@z Thu Jan 1 00:00:00 1970 From: Thomas Monjalon Subject: Re: [PATCH v11 07/25] eal: introduce device class abstraction Date: Sat, 14 Jul 2018 12:35:42 +0200 Message-ID: <4351811.y7EisCzzeV@xps> References: <19f9132f-cbaf-5ac5-8159-1f86e478b9f6@nxp.com> <20180712074125.hfio7uffddoitui5@bidouze.vm.6wind.com> Mime-Version: 1.0 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Cc: dev@dpdk.org, Shreyansh Jain To: =?ISO-8859-1?Q?Ga=EBtan?= Rivet Return-path: Received: from out2-smtp.messagingengine.com (out2-smtp.messagingengine.com [66.111.4.26]) by dpdk.org (Postfix) with ESMTP id 69F6F23C for ; Sat, 14 Jul 2018 16:54:11 +0200 (CEST) In-Reply-To: <20180712074125.hfio7uffddoitui5@bidouze.vm.6wind.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" 12/07/2018 09:41, Ga=EBtan Rivet: > On Thu, Jul 12, 2018 at 12:19:09PM +0530, Shreyansh Jain wrote: > > Any reason you don't want the rte_class_find and rte_class_find_by_name= as > > exposed APIs? There is no experimental tag on these APIs either. >=20 > No actually I just overlooked that part! Thanks for catching this, I > think it should be exposed and tagged experimental. =46ixup below: =2D-- a/lib/librte_eal/common/eal_common_class.c +++ b/lib/librte_eal/common/eal_common_class.c @@ -29,6 +29,7 @@ rte_class_unregister(struct rte_class *class) RTE_LOG(DEBUG, EAL, "Unregistered [%s] device class.\n", class->nam= e); } =20 +__rte_experimental struct rte_class * rte_class_find(const struct rte_class *start, rte_class_cmp_t cmp, const void *data) @@ -55,6 +56,7 @@ cmp_class_name(const struct rte_class *class, const void = *_name) return strcmp(class->name, name); } =20 +__rte_experimental struct rte_class * rte_class_find_by_name(const char *name) { =2D-- a/lib/librte_eal/common/include/rte_class.h +++ b/lib/librte_eal/common/include/rte_class.h @@ -76,6 +76,7 @@ typedef int (*rte_class_cmp_t)(const struct rte_class *cl= s, const void *data); * @return * A pointer to a rte_class structure or NULL in case no class matches */ +__rte_experimental struct rte_class * rte_class_find(const struct rte_class *start, rte_class_cmp_t cmp, const void *data); @@ -83,6 +84,7 @@ rte_class_find(const struct rte_class *start, rte_class_c= mp_t cmp, /** * Find the registered class for a given name. */ +__rte_experimental struct rte_class * rte_class_find_by_name(const char *name); =20 =2D-- a/lib/librte_eal/rte_eal_version.map +++ b/lib/librte_eal/rte_eal_version.map @@ -254,6 +254,8 @@ DPDK_18.08 { EXPERIMENTAL { global: =20 + rte_class_find; + rte_class_find_by_name; rte_class_register; rte_class_unregister; rte_ctrl_thread_create;