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 AE45FA034F; Thu, 14 May 2020 17:32:43 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1E35F1D9E5; Thu, 14 May 2020 17:32:43 +0200 (CEST) Received: from us-smtp-delivery-1.mimecast.com (us-smtp-2.mimecast.com [205.139.110.61]) by dpdk.org (Postfix) with ESMTP id 018151D9E0 for ; Thu, 14 May 2020 17:32:41 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1589470361; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version:content-type:content-type: in-reply-to:in-reply-to:references:references; bh=oYJCKeqGgKe/ayDMmMOMav9UkoTQPKPrKA1GBQXBpZo=; b=HfvZd5I89/SrXO90XI1A1kUm69tRpT3L2zvbfdvKS2wKM4bOjkwQWgoRj81YyXhsnn2yFT SHCef0LWrIt0occn8qvkBZ5BlwunJ6V/w2axVEhMvd22HEOFer9SeFyuM2C1j0e0t0MZVe S39f/IwV2xFn4pVpJEYnqNr8wdHJNF0= Received: from mail-ua1-f71.google.com (mail-ua1-f71.google.com [209.85.222.71]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-372-2JlfhckgMviVL2jlDkhJnQ-1; Thu, 14 May 2020 11:32:38 -0400 X-MC-Unique: 2JlfhckgMviVL2jlDkhJnQ-1 Received: by mail-ua1-f71.google.com with SMTP id d8so492308uap.21 for ; Thu, 14 May 2020 08:32:38 -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=oYJCKeqGgKe/ayDMmMOMav9UkoTQPKPrKA1GBQXBpZo=; b=NjEdljDUvSCKJ5QH7fOPViBIHcYyn1ljZSRU5ftO3ikCRWMfzmdgnjRJwAFe9T01Mn FMY6raj3+x3GuAh8RWbWxOrFeQZWklS/ISqL7xTsNCnuADpe58wiyR/oQu1WFFZt+5VI sGHPGP7AHpd9F0zanSmlDVZmmGwcIOGvzp+J7rKat6mFCvveTWyhCooP2yMT0ZZdyfq2 RJUZmkbkdgjbLu1+asSv828KKuZGAYiUDvSzaOzO/3EVgcQDaNx2+izAvHlqiKCBFia1 UfWK2SHWimRJ5yxKVUswDr3IylhXtakQklcY5NMjfHo2jXPrdhDq1IWUa3797yMRotXx LYNg== X-Gm-Message-State: AOAM533yJJIc/NX7ZJGmx0hrQadHzB1tjhRY8cL38mX148L49Y0Zqr6D JuSRZkif2ggi/NhdDdICuslsQczK7NYUTZSRTT8R111+byuvJhhvCQSBlpeHyRc0XohKm9auWJw ajcK3f3Bqb/EukrbSvd0= X-Received: by 2002:ab0:5586:: with SMTP id v6mr4244472uaa.87.1589470356647; Thu, 14 May 2020 08:32:36 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzAXWn9TzKf8gnw9ePX8DzXWzJD0XM9dIeH0fdR8AVbCxNzzdysnN6JVBC3+zoY4wlE2g+PNaQmES0axHS+UPc= X-Received: by 2002:ab0:5586:: with SMTP id v6mr4244281uaa.87.1589470354881; Thu, 14 May 2020 08:32:34 -0700 (PDT) MIME-Version: 1.0 References: <20200513121149.2283385-1-ferruh.yigit@intel.com> <20200514115236.3293364-1-ferruh.yigit@intel.com> In-Reply-To: <20200514115236.3293364-1-ferruh.yigit@intel.com> From: David Marchand Date: Thu, 14 May 2020 17:32:23 +0200 Message-ID: To: Ferruh Yigit , Ray Kinsella Cc: Neil Horman , Cristian Dumitrescu , Eelco Chaudron , dev , Thomas Monjalon , dpdk stable , Luca Boccassi , Bruce Richardson , Ian Stokes , Andrzej Ostruszka X-Mimecast-Spam-Score: 0 X-Mimecast-Originator: redhat.com Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [PATCH v3] meter: provide experimental alias of API for old apps 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, May 14, 2020 at 1:52 PM Ferruh Yigit wrote: > > On v20.02 some meter APIs have been matured and symbols moved from > EXPERIMENTAL to DPDK_20.0.1 block. > > This can break the applications that were using these mentioned APIs on > v19.11. Although there is no modification on the APIs and the action is > positive and matures the APIs, the affect can be negative to > applications. > > Since experimental APIs can change or go away without notice as part of > contract, to prevent this negative affect that may occur by maturing > experimental API, a process update already suggested, which enables > aliasing without forcing it: > https://patches.dpdk.org/patch/65863/ > > This patch provides aliasing by duplicating the existing and versioned > symbols as experimental. > > Since symbols moved from DPDK_20.0.1 to DPDK_21 block in the v20.05, the > aliasing done between EXPERIMENTAL and DPDK_21. > > Also following changes done to enabling aliasing: > > Created VERSION_SYMBOL_EXPERIMENTAL helper macro. This helper (+ script update) must come with the process update: the macro is referenced in its v5 revision. > > Updated the 'check-experimental-syms.sh' buildtool, which was Nit: the script name changed. > diff --git a/lib/librte_eal/include/rte_function_versioning.h b/lib/librte_eal/include/rte_function_versioning.h > index b9f862d295..534a8bff95 100644 > --- a/lib/librte_eal/include/rte_function_versioning.h > +++ b/lib/librte_eal/include/rte_function_versioning.h > @@ -46,6 +46,15 @@ > */ > #define VERSION_SYMBOL(b, e, n) __asm__(".symver " RTE_STR(b) RTE_STR(e) ", " RTE_STR(b) "@DPDK_" RTE_STR(n)) > > + No need for this newline. > +/* > + * VERSION_SYMBOL_EXPERIMENTAL > + * Creates a symbol version table entry binding the symbol @EXPERIMENTAL to the internal > + * function name . The macro is used when a symbol matures to become part of the stable ABI, > + * to provide an alias to experimental for some time. > + */ > +#define VERSION_SYMBOL_EXPERIMENTAL(b, e) __asm__(".symver " RTE_STR(b) RTE_STR(e) ", " RTE_STR(b) "@EXPERIMENTAL") > + > /* > * BIND_DEFAULT_SYMBOL > * Creates a symbol version entry instructing the linker to bind references to -- David Marchand