mempool: remove inline functions from export list
Checks
Commit Message
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)
[77/77] Linking target drivers/librte_bus_pci-0.200.2.dll.
ninja: build stopped: subcommand failed.
The cause was that there were some inline functions that were included
in the export list.
To solve this the functions were removed from rte_mempool_version.map
export list which are implemented in the header and shouldn't be exported.
Fixes: 4b5062755aa74517ed1d7bd ("mempool: allow user-owned cache")
Fixes: 656f2d3ede96902202a1a5f ("mempool: deprecate specific get and put functions")
Cc: stable@dpdk.org
Signed-off-by: Fady Bader <fady@mellanox.com>
---
lib/librte_mempool/rte_mempool_version.map | 4 ----
1 file changed, 4 deletions(-)
Comments
On 4/22/20 10:37 AM, Fady Bader wrote:
> 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)
> [77/77] Linking target drivers/librte_bus_pci-0.200.2.dll.
> ninja: build stopped: subcommand failed.
>
> The cause was that there were some inline functions that were included
> in the export list.
> To solve this the functions were removed from rte_mempool_version.map
> export list which are implemented in the header and shouldn't be exported.
>
> Fixes: 4b5062755aa74517ed1d7bd ("mempool: allow user-owned cache")
> Fixes: 656f2d3ede96902202a1a5f ("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>
23/04/2020 14:53, Andrew Rybchenko:
> On 4/22/20 10:37 AM, Fady Bader wrote:
> > 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)
> > [77/77] Linking target drivers/librte_bus_pci-0.200.2.dll.
> > ninja: build stopped: subcommand failed.
> >
> > The cause was that there were some inline functions that were included
> > in the export list.
> > To solve this the functions were removed from rte_mempool_version.map
> > export list which are implemented in the header and shouldn't be exported.
> >
> > Fixes: 4b5062755aa74517ed1d7bd ("mempool: allow user-owned cache")
> > Fixes: 656f2d3ede96902202a1a5f ("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>
Applied, thanks
@@ -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;