From: Luca Boccassi <bluca@debian.org>
To: Ferruh Yigit <ferruh.yigit@intel.com>,
Thomas Monjalon <thomas@monjalon.net>,
Neil Horman <nhorman@tuxdriver.com>,
John McNamara <john.mcnamara@intel.com>,
Marko Kovacevic <marko.kovacevic@intel.com>
Cc: dev@dpdk.org, Christian Ehrhardt <christian.ehrhardt@canonical.com>
Subject: Re: [dpdk-dev] [RFC] config: remove RTE_NEXT_ABI
Date: Wed, 07 Mar 2018 18:06:15 +0000 [thread overview]
Message-ID: <1520445975.8866.19.camel@debian.org> (raw)
In-Reply-To: <20180307174422.118291-1-ferruh.yigit@intel.com>
On Wed, 2018-03-07 at 17:44 +0000, Ferruh Yigit wrote:
> After experimental API process defined do we still need RTE_NEXT_ABI
> config and process which has similar targets?
>
> Are distros disable experimental APIs when delivering DPDK? And is
> there
> any config required to control this, as RTE_NEXT_ABI intended to do?
I tried to tinker with not exporting experimental APIs - but the
problem is intra-project dependencies, iow: librte_foo has a
foo_experimental API that librte_bar uses, so if librte_foo
foo_experimental symbol is not available everything breaks down. I need
to spend a bit more on this problem but -ENOTIME
> Cc: Neil Horman <nhorman@tuxdriver.com>
> Cc: Thomas Monjalon <thomas@monjalon.net>
> Cc: Luca Boccassi <bluca@debian.org>
> Cc: Christian Ehrhardt <christian.ehrhardt@canonical.com>
>
> Signed-off-by: Ferruh Yigit <ferruh.yigit@intel.com>
> ---
> config/common_base | 5 -----
> devtools/test-build.sh | 2 --
> devtools/validate-abi.sh | 1 -
> doc/guides/contributing/versioning.rst | 10 ----------
> mk/rte.lib.mk | 5 -----
> pkg/dpdk.spec | 1 -
> 6 files changed, 24 deletions(-)
>
> diff --git a/config/common_base b/config/common_base
> index ad03cf433..6b867f6a9 100644
> --- a/config/common_base
> +++ b/config/common_base
> @@ -41,11 +41,6 @@ CONFIG_RTE_ARCH_STRICT_ALIGN=n
> CONFIG_RTE_BUILD_SHARED_LIB=n
>
> #
> -# Use newest code breaking previous ABI
> -#
> -CONFIG_RTE_NEXT_ABI=y
> -
> -#
> # Major ABI to overwrite library specific LIBABIVER
> #
> CONFIG_RTE_MAJOR_ABI=
> diff --git a/devtools/test-build.sh b/devtools/test-build.sh
> index 3362edcc5..22b4e1a98 100755
> --- a/devtools/test-build.sh
> +++ b/devtools/test-build.sh
> @@ -154,8 +154,6 @@ config () # <directory> <target> <options>
> # Built-in options (lowercase)
> ! echo $3 | grep -q '+default' || \
> sed -ri 's,(RTE_MACHINE=")native,\1default,'
> $1/.config
> - echo $3 | grep -q '+next' || \
> - sed -ri 's,(NEXT_ABI=)y,\1n,' $1/.config
> ! echo $3 | grep -q '+shared' || \
> sed -ri 's,(SHARED_LIB=)n,\1y,' $1/.config
> ! echo $3 | grep -q '+debug' || ( \
> diff --git a/devtools/validate-abi.sh b/devtools/validate-abi.sh
> index 138436d93..a64edf92f 100755
> --- a/devtools/validate-abi.sh
> +++ b/devtools/validate-abi.sh
> @@ -105,7 +105,6 @@ set_log_file() {
> fixup_config() {
> local conf=config/defconfig_$target
> cmd sed -i -e"$ a\CONFIG_RTE_BUILD_SHARED_LIB=y" $conf
> - cmd sed -i -e"$ a\CONFIG_RTE_NEXT_ABI=n" $conf
> cmd sed -i -e"$ a\CONFIG_RTE_EAL_IGB_UIO=n" $conf
> cmd sed -i -e"$ a\CONFIG_RTE_LIBRTE_KNI=n" $conf
> cmd sed -i -e"$ a\CONFIG_RTE_KNI_KMOD=n" $conf
> diff --git a/doc/guides/contributing/versioning.rst
> b/doc/guides/contributing/versioning.rst
> index c495294db..59ff0e8b7 100644
> --- a/doc/guides/contributing/versioning.rst
> +++ b/doc/guides/contributing/versioning.rst
> @@ -91,19 +91,9 @@ being provided. The requirements for doing so are:
> interest" be sought for each deprecation, for example: from NIC
> vendors,
> CPU vendors, end-users, etc.
>
> -#. The changes (including an alternative map file) must be gated
> with
> - the ``RTE_NEXT_ABI`` option, and provided with a deprecation
> notice at the
> - same time.
> - It will become the default ABI in the next release.
> -
> #. A full deprecation cycle, as explained above, must be made to
> offer
> downstream consumers sufficient warning of the change.
>
> -#. At the beginning of the next release cycle, every
> ``RTE_NEXT_ABI``
> - conditions will be removed, the ``LIBABIVER`` variable in the
> makefile(s)
> - where the ABI is changed will be incremented, and the map files
> will
> - be updated.
> -
> Note that the above process for ABI deprecation should not be
> undertaken
> lightly. ABI stability is extremely important for downstream
> consumers of the
> DPDK, especially when distributed in shared object form. Every
> effort should
> diff --git a/mk/rte.lib.mk b/mk/rte.lib.mk
> index c696a2174..8ac26face 100644
> --- a/mk/rte.lib.mk
> +++ b/mk/rte.lib.mk
> @@ -20,11 +20,6 @@ endif
> ifeq ($(CONFIG_RTE_BUILD_SHARED_LIB),y)
> LIB := $(patsubst %.a,%.so.$(LIBABIVER),$(LIB))
> ifeq ($(EXTLIB_BUILD),n)
> -ifeq ($(CONFIG_RTE_MAJOR_ABI),)
> -ifeq ($(CONFIG_RTE_NEXT_ABI),y)
> -LIB := $(LIB).1
> -endif
> -endif
> CPU_LDFLAGS += --version-script=$(SRCDIR)/$(EXPORT_MAP)
> endif
> endif
> diff --git a/pkg/dpdk.spec b/pkg/dpdk.spec
> index 4d3b5745c..d118f0463 100644
> --- a/pkg/dpdk.spec
> +++ b/pkg/dpdk.spec
> @@ -84,7 +84,6 @@ make O=%{target} T=%{config} config
> sed -ri 's,(RTE_MACHINE=).*,\1%{machine},' %{target}/.config
> sed -ri 's,(RTE_APP_TEST=).*,\1n,' %{target}/.config
> sed -ri 's,(RTE_BUILD_SHARED_LIB=).*,\1y,' %{target}/.config
> -sed -ri 's,(RTE_NEXT_ABI=).*,\1n,' %{target}/.config
> sed -ri 's,(LIBRTE_VHOST=).*,\1y,' %{target}/.config
> sed -ri 's,(LIBRTE_PMD_PCAP=).*,\1y,' %{target}/.config
> make O=%{target} %{?_smp_mflags}
--
Kind regards,
Luca Boccassi
next prev parent reply other threads:[~2018-03-07 18:06 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-03-07 17:44 Ferruh Yigit
2018-03-07 18:06 ` Luca Boccassi [this message]
2018-03-08 8:05 ` Thomas Monjalon
2018-03-08 11:43 ` Ferruh Yigit
2018-03-08 15:17 ` Thomas Monjalon
2018-03-08 15:35 ` Neil Horman
2018-03-08 16:04 ` Thomas Monjalon
2018-03-08 19:40 ` Neil Horman
2018-03-08 21:34 ` Thomas Monjalon
2018-03-09 0:18 ` Neil Horman
2018-10-04 15:43 ` [dpdk-dev] [PATCH] config: disable RTE_NEXT_ABI by default Ferruh Yigit
2018-10-04 14:49 ` Luca Boccassi
2018-10-04 15:48 ` [dpdk-dev] [PATCH v2] " Ferruh Yigit
2018-10-04 15:10 ` Thomas Monjalon
2018-10-04 15:28 ` Ferruh Yigit
2018-10-04 15:55 ` Thomas Monjalon
2018-10-05 9:13 ` Bruce Richardson
2018-10-05 10:17 ` Ferruh Yigit
2018-10-05 11:30 ` Neil Horman
2018-10-05 12:35 ` Ferruh Yigit
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1520445975.8866.19.camel@debian.org \
--to=bluca@debian.org \
--cc=christian.ehrhardt@canonical.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=john.mcnamara@intel.com \
--cc=marko.kovacevic@intel.com \
--cc=nhorman@tuxdriver.com \
--cc=thomas@monjalon.net \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).