On Fri, May 15, 2020 at 04:01:53PM +0100, Ray Kinsella wrote:
> From: Ferruh Yigit <ferruh.yi...@intel.com>
>
> On v20.02 some APIs matured and symbols moved from EXPERIMENTAL to
> DPDK_20.0.1 block.
>
> This had the affect of breaking the applications that were using these
> APIs on v19.11. Although there is no modification of the APIs and the
> action is positive and matures the APIs, the affect can be negative to
> applications.
>
> When a maintainer is promoting an API to become part of the next major
> ABI version by removing the experimental tag. The maintainer may
> choose to offer an alias to the experimental tag, to prevent these
> breakages in future.
>
> The following changes are made to enabling aliasing:
>
> Updated to the abi policy and abi versioning documents.
>
> Created VERSION_SYMBOL_EXPERIMENTAL helper macro.
>
> Updated the 'check-symbols.sh' buildtool, which was complaining that the
> symbol is in EXPERIMENTAL tag in .map file but it is not in the
> .experimental section (__rte_experimental tag is missing).
> Updated tool in a way it won't complain if the symbol in the
> EXPERIMENTAL tag duplicated in some other block in .map file (versioned)
>
> Signed-off-by: Ferruh Yigit <ferruh.yi...@intel.com>
> Signed-off-by: Ray Kinsella <m...@ashroe.eu>
> ---
>
> This patch depends on "doc: fix references to bind_default_symbol".
> https://patches.dpdk.org/patch/69850/
>
> Cc: Neil Horman <nhor...@tuxdriver.com>
> Cc: Thomas Monjalon <tho...@monjalon.net>
> Cc: Luca Boccassi <bl...@debian.org>
> Cc: David Marchand <david.march...@redhat.com>
> Cc: Bruce Richardson <bruce.richard...@intel.com>
> Cc: Ian Stokes <ian.sto...@intel.com>
> Cc: Eelco Chaudron <echau...@redhat.com>
> Cc: Andrzej Ostruszka <a...@semihalf.com>
> Cc: Ray Kinsella <m...@ashroe.eu>
> CC: Kevin Traynor <ktray...@redhat.com>
>
> v2:
> * Commit log updated
>
> v3:
> * added suggested comment to VERSION_SYMBOL_EXPERIMENTAL macro
>
> v4:
> * update script name in commit log, remove empty line
>
> v5:
> * incorporate policy and version doc changes
> * remove changes to librte_meter
>
> v6:
> * clarified dependency chain includes "doc: fix references to
> bind_default_symbol".
>
> buildtools/check-symbols.sh | 3 +-
> doc/guides/contributing/abi_policy.rst | 10 ++
> doc/guides/contributing/abi_versioning.rst | 158
> ++++++++++++++++++++++-
> lib/librte_eal/include/rte_function_versioning.h | 9 ++
> 4 files changed, 178 insertions(+), 2 deletions(-)
>
Acked-by: Neil Horman <nhor...@tuxdriver.com>