aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorVladimir Ratnikov <vratnikov@netgate.com>2022-12-19 08:45:35 +0000
committerMatthew Smith <mgsmith@netgate.com>2022-12-21 19:55:00 +0000
commitb89dcf8241a729b8a86dc1358f61fa2af8ab0c2c (patch)
tree2db01c8506e0ed5e06c610b0dbb87fc14d9be275
parent4b6fb593fbbfe1294b6f620c72dfa0f6842eca69 (diff)
dpdk: link DPDK with MLX4/MLX5 libraries again
Previously it was linked and worker properly. While rdma build was simplified, link was lost so all encrypted data won't pass via Mellanox interfaces(ipsec, ipip, ssh etc) and NetVSC taps won't created the right way. Errors: mlx5_common: Verbs device not found: 21a5:00:02.0 mlx5_common: Failed to initialize device context. EAL: Requested device 21a5:00:02.0 cannot be used Tested on Azure. Same errors appears on physical machine with Mellanox connect adapter Type: fix Signed-off-by: Vladimir Ratnikov <vratnikov@netgate.com> Change-Id: Ib68976282e0ed91c016a7318db6b5eddf5510c47 (cherry picked from commit 413447451e3f842815f45bae5d3cd3f87a0876e5)
-rw-r--r--src/plugins/dpdk/CMakeLists.txt4
1 files changed, 3 insertions, 1 deletions
diff --git a/src/plugins/dpdk/CMakeLists.txt b/src/plugins/dpdk/CMakeLists.txt
index a9d4f3e514c..a6dda260227 100644
--- a/src/plugins/dpdk/CMakeLists.txt
+++ b/src/plugins/dpdk/CMakeLists.txt
@@ -104,7 +104,9 @@ else()
else()
message(WARNING "EXPERIMENTAL: DPDK plugin without dlopen mode")
vpp_plugin_find_library(dpdk IBVERBS_LIB "libibverbs.a")
- string_append(DPDK_LINK_FLAGS "${IBVERBS_LIB} -Wl,--exclude-libs,ALL")
+ vpp_plugin_find_library(dpdk MLX5_LIB "libmlx5.a")
+ vpp_plugin_find_library(dpdk MLX4_LIB "libmlx4.a")
+ string_append(DPDK_LINK_FLAGS "-Wl,--whole-archive,${IBVERBS_LIB},${MLX5_LIB},${MLX4_LIB} -Wl,--no-whole-archive,--exclude-libs,ALL")
endif()
endif()
endif()