mempool: remove inline functions from export list
authorFady Bader <fady@mellanox.com>
Wed, 22 Apr 2020 07:37:44 +0000 (10:37 +0300)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 24 Apr 2020 16:11:49 +0000 (18:11 +0200)
The code didn't compile when using exported mempool functions
under Windows.

compilation error logs:
rte_mempool_exports.def : error LNK2001:
unresolved external symbol rte_mempool_cache_flush
rte_mempool_exports.def : error LNK2001:
unresolved external symbol rte_mempool_default_cache
rte_mempool_exports.def : error LNK2001:
unresolved external symbol rte_mempool_generic_get
rte_mempool_exports.def : error LNK2001:
unresolved external symbol rte_mempool_generic_put
lib\librte_mempool.dll.a : fatal error LNK1120: 4 unresolved externals
clang: error: linker command failed with exit code 1120 (use -v to see invocation)

The cause was that there were some inline functions that were included
in the export list.
To solve this the functions, which are implemented in the header
and shouldn't be exported, were removed from rte_mempool_version.map
export list.

Fixes: 4b5062755aa7 ("mempool: allow user-owned cache")
Fixes: 656f2d3ede96 ("mempool: deprecate specific get and put functions")
Cc: stable@dpdk.org
Signed-off-by: Fady Bader <fady@mellanox.com>
Acked-by: Andrew Rybchenko <arybchenko@solarflare.com>
lib/librte_mempool/rte_mempool_version.map

index 4fffd3e..695dd6e 100644 (file)
@@ -4,18 +4,14 @@ DPDK_20.0 {
        rte_mempool_audit;
        rte_mempool_avail_count;
        rte_mempool_cache_create;
-       rte_mempool_cache_flush;
        rte_mempool_cache_free;
        rte_mempool_calc_obj_size;
        rte_mempool_check_cookies;
        rte_mempool_contig_blocks_check_cookies;
        rte_mempool_create;
        rte_mempool_create_empty;
-       rte_mempool_default_cache;
        rte_mempool_dump;
        rte_mempool_free;
-       rte_mempool_generic_get;
-       rte_mempool_generic_put;
        rte_mempool_in_use_count;
        rte_mempool_list_dump;
        rte_mempool_lookup;