From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 3D844A0471 for ; Fri, 21 Jun 2019 14:45:59 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id B923D1D5C7; Fri, 21 Jun 2019 14:45:58 +0200 (CEST) Received: from mail-io1-f66.google.com (mail-io1-f66.google.com [209.85.166.66]) by dpdk.org (Postfix) with ESMTP id 6B16A1D50F for ; Fri, 21 Jun 2019 14:45:57 +0200 (CEST) Received: by mail-io1-f66.google.com with SMTP id w25so2713689ioc.8 for ; Fri, 21 Jun 2019 05:45:57 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=GwYIQ/vLkTGaaJQYaN1XwcbmPY+Otu4R6wAnrDFj6AI=; b=c3Ro+v61hwoq81W7MoI1czWqefp16wbTlrjHmD/gvVoqtx7TI6lYXf8cZ1IQGG0gnW cCixLmNTvNLik3Tk9x6X2PQwPbHJ1q3AMVG8j7HNs3w8mTNt+RFyGkGo9GC9jf/Rnr60 JctYYLH04mG3muWSc2S8UCip+3aKX+wsjK37xPMhXX5KGUuW8weBZ6ByL+dEXvVTiLmG M5GWkfm1lVRu5WUtbkAeS1uL1eotUBV42Acl5t/1QJ//0cRvBj/dUeTMbKw2Z+dU9nHm PaWiaD/aGaNSnJ1E4JTQij04Ueec/WxHuy3STve8uoOUYhxzdosZBUuTqkiVYuA4hqkN XO5w== X-Gm-Message-State: APjAAAUEs8PxD5HOuBSFbqT/D0EizJ1Q9+rIEwmZVXfQJI5rhhlm4P2w 6nbxmVa1Gxbge2wYLs5OcSiEQ/8TW5Xo0/6Oe3Kmag== X-Google-Smtp-Source: APXvYqx/VJo6eM1o/wnQReIiMw8FDwNbHfjyuBsbf23nqHks5dW4ShTgqcTtVRAx6EP+81BWEOEBCHQ6NNXmRDG8Gto= X-Received: by 2002:a6b:ee15:: with SMTP id i21mr11312121ioh.281.1561121156742; Fri, 21 Jun 2019 05:45:56 -0700 (PDT) MIME-Version: 1.0 References: <20190620164206.3972-1-gage.eads@intel.com> In-Reply-To: From: David Marchand Date: Fri, 21 Jun 2019 14:45:45 +0200 Message-ID: To: Aaron Conole , Neil Horman , Adrien Mazarguil Cc: Gage Eads , dev , Jerin Jacob Kollanukkaran , Van Haaren Harry , Nikhil Rao , Erik Gabriel Carrillo , Bruce Richardson , Pablo de Lara Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: Re: [dpdk-dev] [PATCH] eal: promote some service core functions to stable 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 Thu, Jun 20, 2019 at 10:16 PM David Marchand wrote: > > > On Thu, Jun 20, 2019 at 9:45 PM David Marchand > wrote: > >> >> >> On Thu, Jun 20, 2019 at 8:26 PM Aaron Conole wrote: >> >>> Gage Eads writes: >>> >>> > The functions rte_service_may_be_active(), >>> rte_service_lcore_attr_get(), >>> > and rte_service_attr_reset_all() were introduced nearly a year ago in >>> DPDK >>> > 18.08. They can be considered non-experimental for the 19.08 release. >>> > >>> > rte_service_may_be_active() is used by eventdev and the sw PMD, and >>> this >>> > commit allows them to not need any experimental API. >>> > >>> > Signed-off-by: Gage Eads >>> > --- >>> > drivers/event/sw/Makefile | 1 - >>> > drivers/event/sw/meson.build | 1 - >>> > lib/librte_eal/common/include/rte_service.h | 15 +++------------ >>> > lib/librte_eal/common/rte_service.c | 6 +++--- >>> > lib/librte_eal/rte_eal_version.map | 6 +++--- >>> > lib/librte_eventdev/Makefile | 1 - >>> > lib/librte_eventdev/meson.build | 1 - >>> > 7 files changed, 9 insertions(+), 22 deletions(-) >>> > >>> > diff --git a/drivers/event/sw/Makefile b/drivers/event/sw/Makefile >>> > index 81236a392..c6600e836 100644 >>> > --- a/drivers/event/sw/Makefile >>> > +++ b/drivers/event/sw/Makefile >>> > @@ -7,7 +7,6 @@ include $(RTE_SDK)/mk/rte.vars.mk >>> > LIB = librte_pmd_sw_event.a >>> > >>> > # build flags >>> > -CFLAGS += -DALLOW_EXPERIMENTAL_API >>> > CFLAGS += -O3 >>> > CFLAGS += $(WERROR_FLAGS) >>> > # for older GCC versions, allow us to initialize an event using >>> > diff --git a/drivers/event/sw/meson.build >>> b/drivers/event/sw/meson.build >>> > index 30d221647..985012219 100644 >>> > --- a/drivers/event/sw/meson.build >>> > +++ b/drivers/event/sw/meson.build >>> > @@ -1,7 +1,6 @@ >>> > # SPDX-License-Identifier: BSD-3-Clause >>> > # Copyright(c) 2017 Intel Corporation >>> > >>> > -allow_experimental_apis = true >>> >>> I don't think you can remove these. There are still some experimental >>> APIs (f.e. the rename for rte_cryptodev_sym_session_get_private_data >>> marked that function as experimental and it will cause build breakage). >>> >>> Maybe I'm mis understanding it? It would be good to get verification >>> from Bruce whether that API should not be marked as experimental (it was >>> just a rename, so not sure...) - maybe that's a follow up for this >>> patch? >>> >>> See: https://travis-ci.com/ovsrobot/dpdk/jobs/209722145 for an example >>> >>> The odd thing is I only see it on the clang builds - perhaps it's a >>> missing definition for the clang compiler. >>> >> >> Erf, it looks like the __rte_experimental tag is affected by the order in >> the declaration of the symbol. >> >> --- a/lib/librte_cryptodev/rte_cryptodev.h >> +++ b/lib/librte_cryptodev/rte_cryptodev.h >> @@ -1245,7 +1245,7 @@ struct rte_cryptodev_asym_session * >> __rte_experimental >> * - On success return pointer to user data. >> * - On failure returns NULL. >> */ >> -void * __rte_experimental >> +__rte_experimental void * >> rte_cryptodev_sym_session_get_user_data( >> struct rte_cryptodev_sym_session >> *sess); >> >> > https://hastebin.com/micomogoqi.cs > > Does it mean that the "void *" type had been marked as deprecated with the > previous syntax? > Requesting compiler experts assistance :-) > Ok, did a new pass on the tree.. found quite some sites where we have issues (and other discrepancies... I started a new patchset). Looked at gcc documentation [1], and to me the safer approach would be to enforce that __rte_experimental is the first thing of a symbol declaration. Comments? 1: https://gcc.gnu.org/onlinedocs/gcc/Attribute-Syntax.html -- David Marchand