[dpdk-dev] eal: fix build with Xen dom0 enabled
Commit Message
There is a new function in the EAL API for internal use.
It has neither a proper prefix nor a .map export:
libethdev.so: undefined reference to `is_xen_dom0_supported'
Fixes: 719dbebceb81 ("xen: allow determining DOM0 at runtime")
Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
---
drivers/net/i40e/i40e_rxtx.c | 2 +-
lib/librte_eal/bsdapp/eal/rte_eal_version.map | 1 +
lib/librte_eal/common/include/rte_memory.h | 6 +++---
lib/librte_eal/linuxapp/eal/eal_memory.c | 2 +-
lib/librte_eal/linuxapp/eal/rte_eal_version.map | 1 +
lib/librte_ether/rte_ethdev.c | 2 +-
lib/librte_mempool/rte_mempool.c | 2 +-
7 files changed, 9 insertions(+), 7 deletions(-)
Comments
2015-12-03 05:25, Thomas Monjalon:
> There is a new function in the EAL API for internal use.
> It has neither a proper prefix nor a .map export:
> libethdev.so: undefined reference to `is_xen_dom0_supported'
>
> Fixes: 719dbebceb81 ("xen: allow determining DOM0 at runtime")
>
> Signed-off-by: Thomas Monjalon <thomas.monjalon@6wind.com>
Applied
@@ -2531,7 +2531,7 @@ i40e_memzone_reserve(const char *name, uint32_t len, int socket_id)
if (mz)
return mz;
- if (is_xen_dom0_supported())
+ if (rte_xen_dom0_supported())
mz = rte_memzone_reserve_bounded(name, len,
socket_id, 0, I40E_RING_BASE_ALIGN, RTE_PGSIZE_2M);
else
@@ -134,5 +134,6 @@ DPDK_2.2 {
rte_keepalive_dispatch_pings;
rte_keepalive_mark_alive;
rte_keepalive_register_core;
+ rte_xen_dom0_supported;
} DPDK_2.1;
@@ -184,7 +184,7 @@ unsigned rte_memory_get_nrank(void);
#ifdef RTE_LIBRTE_XEN_DOM0
/**< Internal use only - should DOM0 memory mapping be used */
-extern int is_xen_dom0_supported(void);
+extern int rte_xen_dom0_supported(void);
/**< Internal use only - phys to virt mapping for xen */
phys_addr_t rte_xen_mem_phy2mch(uint32_t, const phys_addr_t);
@@ -203,7 +203,7 @@ phys_addr_t rte_xen_mem_phy2mch(uint32_t, const phys_addr_t);
static inline phys_addr_t
rte_mem_phy2mch(uint32_t memseg_id, const phys_addr_t phy_addr)
{
- if (is_xen_dom0_supported())
+ if (rte_xen_dom0_supported())
return rte_xen_mem_phy2mch(memseg_id, phy_addr);
else
return phy_addr;
@@ -231,7 +231,7 @@ int rte_xen_dom0_memory_init(void);
*/
int rte_xen_dom0_memory_attach(void);
#else
-static inline int is_xen_dom0_supported(void)
+static inline int rte_xen_dom0_supported(void)
{
return 0;
}
@@ -98,7 +98,7 @@
#include "eal_hugepages.h"
#ifdef RTE_LIBRTE_XEN_DOM0
-int is_xen_dom0_supported(void)
+int rte_xen_dom0_supported(void)
{
return internal_config.xen_dom0_support;
}
@@ -137,5 +137,6 @@ DPDK_2.2 {
rte_keepalive_dispatch_pings;
rte_keepalive_mark_alive;
rte_keepalive_register_core;
+ rte_xen_dom0_supported;
} DPDK_2.1;
@@ -2605,7 +2605,7 @@ rte_eth_dma_zone_reserve(const struct rte_eth_dev *dev, const char *ring_name,
if (mz)
return mz;
- if (is_xen_dom0_supported())
+ if (rte_xen_dom0_supported())
return rte_memzone_reserve_bounded(z_name, size, socket_id,
0, align, RTE_PGSIZE_2M);
else
@@ -403,7 +403,7 @@ rte_mempool_create(const char *name, unsigned n, unsigned elt_size,
rte_mempool_obj_ctor_t *obj_init, void *obj_init_arg,
int socket_id, unsigned flags)
{
- if (is_xen_dom0_supported())
+ if (rte_xen_dom0_supported())
return rte_dom0_mempool_create(name, n, elt_size,
cache_size, private_data_size,
mp_init, mp_init_arg,