Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/49502/?format=api
https://patches.dpdk.org/api/patches/49502/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/20190109020524.3633-1-thomas@monjalon.net/", "project": { "id": 1, "url": "https://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20190109020524.3633-1-thomas@monjalon.net>", "list_archive_url": "https://inbox.dpdk.org/dev/20190109020524.3633-1-thomas@monjalon.net", "date": "2019-01-09T02:05:23", "name": "[1/2] config: gather options for dlopen mlx dependency", "commit_ref": null, "pull_url": null, "state": "superseded", "archived": true, "hash": "1497c6ebf4b03e1d1080ae5111b3d990228b5e41", "submitter": { "id": 685, "url": "https://patches.dpdk.org/api/people/685/?format=api", "name": "Thomas Monjalon", "email": "thomas@monjalon.net" }, "delegate": { "id": 6624, "url": "https://patches.dpdk.org/api/users/6624/?format=api", "username": "shahafs", "first_name": "Shahaf", "last_name": "Shuler", "email": "shahafs@mellanox.com" }, "mbox": "https://patches.dpdk.org/project/dpdk/patch/20190109020524.3633-1-thomas@monjalon.net/mbox/", "series": [ { "id": 3052, "url": "https://patches.dpdk.org/api/series/3052/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=3052", "date": "2019-01-09T02:05:23", "name": "[1/2] config: gather options for dlopen mlx dependency", "version": 1, "mbox": "https://patches.dpdk.org/series/3052/mbox/" } ], "comments": "https://patches.dpdk.org/api/patches/49502/comments/", "check": "success", "checks": "https://patches.dpdk.org/api/patches/49502/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@dpdk.org", "Delivered-To": "patchwork@dpdk.org", "Received": [ "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 646581B205;\n\tWed, 9 Jan 2019 03:05:43 +0100 (CET)", "from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com\n\t[66.111.4.25]) by dpdk.org (Postfix) with ESMTP id 7C3EC1B202\n\tfor <dev@dpdk.org>; Wed, 9 Jan 2019 03:05:42 +0100 (CET)", "from compute1.internal (compute1.nyi.internal [10.202.2.41])\n\tby mailout.nyi.internal (Postfix) with ESMTP id 278B725567;\n\tTue, 8 Jan 2019 21:05:42 -0500 (EST)", "from mailfrontend2 ([10.202.2.163])\n\tby compute1.internal (MEProxy); Tue, 08 Jan 2019 21:05:42 -0500", "from xps.monjalon.net (184.203.134.77.rev.sfr.net [77.134.203.184])\n\tby mail.messagingengine.com (Postfix) with ESMTPA id DA17110085;\n\tTue, 8 Jan 2019 21:05:40 -0500 (EST)" ], "DKIM-Signature": [ "v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h=\n\tfrom:to:cc:subject:date:message-id:mime-version\n\t:content-transfer-encoding; s=mesmtp; bh=cyF+YfW2TQqjeenC9Uhgv+Y\n\tSslT9VefrLAvA/SFIz1c=; b=rLzIMJUdKpF1KhdRh59PyNr4RJPMGAUvWkW2B4R\n\tZ4UmilRNuLKpQVbl52C3AQ0spwQE7TPv1KDhZa6QkuLZiqoxQ/C2bAq0CZwJKoRf\n\tEDfFmD/EKvFvYZPY5djKXi+oK9gpzBiqYb5R/wI7VOas2rxwkhZA08l9kjjoU1+r\n\tX8bg=", "v=1; a=rsa-sha256; c=relaxed/relaxed; d=\n\tmessagingengine.com; h=cc:content-transfer-encoding:date:from\n\t:message-id:mime-version:subject:to:x-me-proxy:x-me-proxy\n\t:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=cyF+YfW2TQqjeenC9\n\tUhgv+YSslT9VefrLAvA/SFIz1c=; b=bY+eBP5BZIm1TTkbO/v48Bx50sUfhe/AC\n\tZAsFEVNDqz8D405n3bQcSHRXtw1g8WY8AWh+GpT9pn6yE19n4u8uoFix5wEpWkXb\n\tiaLzWvO6whw8h5WWQFDojRpy7wrJXNr6guk7SVYeMomzYod4ZjkdQnPRVU8sAp2j\n\tI46iWy89sxWau6my3K+h62LJwEfioVUGsEROp71yiPGNKHT5sm9mU6Tea/Gxgs4Q\n\tBQthn1TcI4XM4TIAB/N0Ka8ePmELq/2Ps+z6ZSmoimkXU/wk+SUmeE6h9nx3k72Q\n\tN/UM9F7KndkCKl4XclYeE/OQFMPiDbbJbszSQijemYL73BYdKIvWA==" ], "X-ME-Sender": "<xms:9VY1XCI_UdPzBtKHHsfeJe4FrOQ6MJXLDF3678L39BQeE8ue8KZUzA>", "X-ME-Proxy-Cause": "gggruggvucftvghtrhhoucdtuddrgedtledrfedtgdegfeculddtuddrgedtkedrtddtmd\n\tcutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpqfhuthen\n\tuceurghilhhouhhtmecufedttdenucenucfjughrpefhvffufffkofgggfestdekredtre\n\tdttdenucfhrhhomhepvfhhohhmrghsucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhho\n\tnhhjrghlohhnrdhnvghtqeenucfkphepjeejrddufeegrddvtdefrddukeegnecurfgrrh\n\tgrmhepmhgrihhlfhhrohhmpehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtnecuvehl\n\tuhhsthgvrhfuihiivgeptd", "X-ME-Proxy": "<xmx:9VY1XAAt7qeg1Ht97ElTbU1eM2H-7MoCzTs5IbzrrSqNxKmBVk2HsA>\n\t<xmx:9VY1XFJJn5QtdMqg7wPaFMmmQGgW2pW5ALg0-9np3NS9_5BANWof8Q>\n\t<xmx:9VY1XIipnlBdfK5GashZ7p3uQpyazKqjX8mY4XTwZms2pldd7WhLiQ>\n\t<xmx:9lY1XHa2r4LZJaaDnHStBz02EItt-DLgINW5HcIvnu9G3vmEJ6NAgQ>", "From": "Thomas Monjalon <thomas@monjalon.net>", "To": "yskoh@mellanox.com,\n\tshahafs@mellanox.com", "Cc": "dev@dpdk.org,\n\tferruh.yigit@intel.com,\n\tbruce.richardson@intel.com", "Date": "Wed, 9 Jan 2019 03:05:23 +0100", "Message-Id": "<20190109020524.3633-1-thomas@monjalon.net>", "X-Mailer": "git-send-email 2.20.1", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[dpdk-dev] [PATCH 1/2] config: gather options for dlopen mlx\n\tdependency", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.15", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "content": "Rename options CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS and\nCONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS to a single option\nCONFIG_RTE_IBVERBS_LINK_DLOPEN.\nRename meson option enable_driver_mlx_glue to ibverbs_link.\n\nThere was no good reason for setting a different link option\nfor mlx4 and mlx5. Having a single common option makes it\neasier to understand and unify make and meson systems.\n\nSigned-off-by: Thomas Monjalon <thomas@monjalon.net>\n---\n config/common_base | 7 +++++--\n doc/guides/nics/mlx4.rst | 4 ++--\n doc/guides/nics/mlx5.rst | 4 ++--\n drivers/net/mlx4/Makefile | 8 ++++----\n drivers/net/mlx4/meson.build | 4 ++--\n drivers/net/mlx4/mlx4.c | 4 ++--\n drivers/net/mlx5/Makefile | 8 ++++----\n drivers/net/mlx5/meson.build | 4 ++--\n drivers/net/mlx5/mlx5.c | 4 ++--\n meson_options.txt | 4 ++--\n mk/rte.app.mk | 15 +++++++--------\n 11 files changed, 34 insertions(+), 32 deletions(-)", "diff": "diff --git a/config/common_base b/config/common_base\nindex 964a6956e..37f692ce1 100644\n--- a/config/common_base\n+++ b/config/common_base\n@@ -320,7 +320,6 @@ CONFIG_RTE_LIBRTE_AVF_16BYTE_RX_DESC=n\n #\n CONFIG_RTE_LIBRTE_MLX4_PMD=n\n CONFIG_RTE_LIBRTE_MLX4_DEBUG=n\n-CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS=n\n \n #\n # Compile burst-oriented Mellanox ConnectX-4, ConnectX-5,\n@@ -328,7 +327,11 @@ CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS=n\n #\n CONFIG_RTE_LIBRTE_MLX5_PMD=n\n CONFIG_RTE_LIBRTE_MLX5_DEBUG=n\n-CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS=n\n+\n+# Linking method for mlx4/5 dependency on ibverbs and related libraries\n+# Default linking is dynamic by linker.\n+# Other option is dynamic by dlopen at run-time.\n+CONFIG_RTE_IBVERBS_LINK_DLOPEN=n\n \n #\n # Compile burst-oriented Netronome NFP PMD driver\ndiff --git a/doc/guides/nics/mlx4.rst b/doc/guides/nics/mlx4.rst\nindex 5326d916e..88d467a23 100644\n--- a/doc/guides/nics/mlx4.rst\n+++ b/doc/guides/nics/mlx4.rst\n@@ -60,7 +60,7 @@ These options can be modified in the ``.config`` file.\n \n Toggle compilation of librte_pmd_mlx4 itself.\n \n-- ``CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS`` (default **n**)\n+- ``CONFIG_RTE_IBVERBS_LINK_DLOPEN`` (default **n**)\n \n Build PMD with additional code to make it loadable without hard\n dependencies on **libibverbs** nor **libmlx4**, which may not be installed\n@@ -93,7 +93,7 @@ Environment variables\n A list of directories in which to search for the rdma-core \"glue\" plug-in,\n separated by colons or semi-colons.\n \n- Only matters when compiled with ``CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS``\n+ Only matters when compiled with ``CONFIG_RTE_IBVERBS_LINK_DLOPEN``\n enabled and most useful when ``CONFIG_RTE_EAL_PMD_PATH`` is also set,\n since ``LD_LIBRARY_PATH`` has no effect in this case.\n \ndiff --git a/doc/guides/nics/mlx5.rst b/doc/guides/nics/mlx5.rst\nindex add8bc1ed..749acd222 100644\n--- a/doc/guides/nics/mlx5.rst\n+++ b/doc/guides/nics/mlx5.rst\n@@ -191,7 +191,7 @@ These options can be modified in the ``.config`` file.\n \n Toggle compilation of librte_pmd_mlx5 itself.\n \n-- ``CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS`` (default **n**)\n+- ``CONFIG_RTE_IBVERBS_LINK_DLOPEN`` (default **n**)\n \n Build PMD with additional code to make it loadable without hard\n dependencies on **libibverbs** nor **libmlx5**, which may not be installed\n@@ -224,7 +224,7 @@ Environment variables\n A list of directories in which to search for the rdma-core \"glue\" plug-in,\n separated by colons or semi-colons.\n \n- Only matters when compiled with ``CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS``\n+ Only matters when compiled with ``CONFIG_RTE_IBVERBS_LINK_DLOPEN``\n enabled and most useful when ``CONFIG_RTE_EAL_PMD_PATH`` is also set,\n since ``LD_LIBRARY_PATH`` has no effect in this case.\n \ndiff --git a/drivers/net/mlx4/Makefile b/drivers/net/mlx4/Makefile\nindex 92e932250..724a4dcbc 100644\n--- a/drivers/net/mlx4/Makefile\n+++ b/drivers/net/mlx4/Makefile\n@@ -14,7 +14,7 @@ LIB_GLUE_VERSION = 18.02.0\n SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += mlx4.c\n SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += mlx4_ethdev.c\n SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += mlx4_flow.c\n-ifneq ($(CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS),y)\n+ifneq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += mlx4_glue.c\n endif\n SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += mlx4_intr.c\n@@ -24,7 +24,7 @@ SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += mlx4_rxtx.c\n SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += mlx4_txq.c\n SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += mlx4_utils.c\n \n-ifeq ($(CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS),y)\n+ifeq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n INSTALL-$(CONFIG_RTE_LIBRTE_MLX4_PMD)-lib += $(LIB_GLUE)\n endif\n \n@@ -38,7 +38,7 @@ CFLAGS += -D_DEFAULT_SOURCE\n CFLAGS += -D_XOPEN_SOURCE=600\n CFLAGS += $(WERROR_FLAGS)\n CFLAGS += -DALLOW_EXPERIMENTAL_API\n-ifeq ($(CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS),y)\n+ifeq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n CFLAGS += -DMLX4_GLUE='\"$(LIB_GLUE)\"'\n CFLAGS += -DMLX4_GLUE_VERSION='\"$(LIB_GLUE_VERSION)\"'\n CFLAGS_mlx4_glue.o += -fPIC\n@@ -103,7 +103,7 @@ $(SRCS-$(CONFIG_RTE_LIBRTE_MLX4_PMD):.c=.o): mlx4_autoconf.h\n # Generate dependency plug-in for rdma-core when the PMD must not be linked\n # directly, so that applications do not inherit this dependency.\n \n-ifeq ($(CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS),y)\n+ifeq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n \n $(LIB): $(LIB_GLUE)\n \ndiff --git a/drivers/net/mlx4/meson.build b/drivers/net/mlx4/meson.build\nindex 7de571e2a..4bccd68e0 100644\n--- a/drivers/net/mlx4/meson.build\n+++ b/drivers/net/mlx4/meson.build\n@@ -2,12 +2,12 @@\n # Copyright 2018 6WIND S.A.\n # Copyright 2018 Mellanox Technologies, Ltd\n \n-pmd_dlopen = get_option('enable_driver_mlx_glue')\n+pmd_dlopen = (get_option('ibverbs_link') == 'dlopen')\n LIB_GLUE_BASE = 'librte_pmd_mlx4_glue.so'\n LIB_GLUE_VERSION = '18.02.0'\n LIB_GLUE = LIB_GLUE_BASE + '.' + LIB_GLUE_VERSION\n if pmd_dlopen\n-\tdpdk_conf.set('RTE_LIBRTE_MLX4_DLOPEN_DEPS', 1)\n+\tdpdk_conf.set('RTE_IBVERBS_LINK_DLOPEN', 1)\n \tcflags += [\n \t\t'-DMLX4_GLUE=\"@0@\"'.format(LIB_GLUE),\n \t\t'-DMLX4_GLUE_VERSION=\"@0@\"'.format(LIB_GLUE_VERSION),\ndiff --git a/drivers/net/mlx4/mlx4.c b/drivers/net/mlx4/mlx4.c\nindex 7f07b8dc0..070cf7111 100644\n--- a/drivers/net/mlx4/mlx4.c\n+++ b/drivers/net/mlx4/mlx4.c\n@@ -838,7 +838,7 @@ static struct rte_pci_driver mlx4_driver = {\n \t\t RTE_PCI_DRV_INTR_RMV,\n };\n \n-#ifdef RTE_LIBRTE_MLX4_DLOPEN_DEPS\n+#ifdef RTE_IBVERBS_LINK_DLOPEN\n \n /**\n * Suffix RTE_EAL_PMD_PATH with \"-glue\".\n@@ -986,7 +986,7 @@ RTE_INIT(rte_mlx4_pmd_init)\n \t * using this PMD, which is not supported in forked processes.\n \t */\n \tsetenv(\"RDMAV_HUGEPAGES_SAFE\", \"1\", 1);\n-#ifdef RTE_LIBRTE_MLX4_DLOPEN_DEPS\n+#ifdef RTE_IBVERBS_LINK_DLOPEN\n \tif (mlx4_glue_init())\n \t\treturn;\n \tassert(mlx4_glue);\ndiff --git a/drivers/net/mlx5/Makefile b/drivers/net/mlx5/Makefile\nindex 1353c1827..47a7f4d68 100644\n--- a/drivers/net/mlx5/Makefile\n+++ b/drivers/net/mlx5/Makefile\n@@ -12,7 +12,7 @@ LIB_GLUE_VERSION = 19.02.0\n \n # Sources.\n SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5.c\n-ifneq ($(CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS),y)\n+ifneq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_glue.c\n endif\n SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_rxq.c\n@@ -37,7 +37,7 @@ SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_flow_verbs.c\n SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_socket.c\n SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += mlx5_nl.c\n \n-ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS),y)\n+ifeq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n INSTALL-$(CONFIG_RTE_LIBRTE_MLX5_PMD)-lib += $(LIB_GLUE)\n endif\n \n@@ -52,7 +52,7 @@ CFLAGS += -D_XOPEN_SOURCE=600\n CFLAGS += $(WERROR_FLAGS)\n CFLAGS += -Wno-strict-prototypes\n CFLAGS += $(shell command -v pkg-config > /dev/null 2>&1 && pkg-config --cflags libmnl)\n-ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS),y)\n+ifeq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n CFLAGS += -DMLX5_GLUE='\"$(LIB_GLUE)\"'\n CFLAGS += -DMLX5_GLUE_VERSION='\"$(LIB_GLUE_VERSION)\"'\n CFLAGS_mlx5_glue.o += -fPIC\n@@ -525,7 +525,7 @@ $(SRCS-$(CONFIG_RTE_LIBRTE_MLX5_PMD):.c=.o): mlx5_autoconf.h\n # Generate dependency plug-in for rdma-core when the PMD must not be linked\n # directly, so that applications do not inherit this dependency.\n \n-ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS),y)\n+ifeq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n \n $(LIB): $(LIB_GLUE)\n \ndiff --git a/drivers/net/mlx5/meson.build b/drivers/net/mlx5/meson.build\nindex 8ba19e818..a1130d610 100644\n--- a/drivers/net/mlx5/meson.build\n+++ b/drivers/net/mlx5/meson.build\n@@ -2,12 +2,12 @@\n # Copyright 2018 6WIND S.A.\n # Copyright 2018 Mellanox Technologies, Ltd\n \n-pmd_dlopen = get_option('enable_driver_mlx_glue')\n+pmd_dlopen = (get_option('ibverbs_link') == 'dlopen')\n LIB_GLUE_BASE = 'librte_pmd_mlx5_glue.so'\n LIB_GLUE_VERSION = '19.02.0'\n LIB_GLUE = LIB_GLUE_BASE + '.' + LIB_GLUE_VERSION\n if pmd_dlopen\n-\tdpdk_conf.set('RTE_LIBRTE_MLX5_DLOPEN_DEPS', 1)\n+\tdpdk_conf.set('RTE_IBVERBS_LINK_DLOPEN', 1)\n \tcflags += [\n \t\t'-DMLX5_GLUE=\"@0@\"'.format(LIB_GLUE),\n \t\t'-DMLX5_GLUE_VERSION=\"@0@\"'.format(LIB_GLUE_VERSION),\ndiff --git a/drivers/net/mlx5/mlx5.c b/drivers/net/mlx5/mlx5.c\nindex 45210451d..f111e6ef8 100644\n--- a/drivers/net/mlx5/mlx5.c\n+++ b/drivers/net/mlx5/mlx5.c\n@@ -1609,7 +1609,7 @@ static struct rte_pci_driver mlx5_driver = {\n \t\t RTE_PCI_DRV_PROBE_AGAIN),\n };\n \n-#ifdef RTE_LIBRTE_MLX5_DLOPEN_DEPS\n+#ifdef RTE_IBVERBS_LINK_DLOPEN\n \n /**\n * Suffix RTE_EAL_PMD_PATH with \"-glue\".\n@@ -1770,7 +1770,7 @@ RTE_INIT(rte_mlx5_pmd_init)\n \t * cleanup all the Verbs resources even when the device was removed.\n \t */\n \tsetenv(\"MLX5_DEVICE_FATAL_CLEANUP\", \"1\", 1);\n-#ifdef RTE_LIBRTE_MLX5_DLOPEN_DEPS\n+#ifdef RTE_IBVERBS_LINK_DLOPEN\n \tif (mlx5_glue_init())\n \t\treturn;\n \tassert(mlx5_glue);\ndiff --git a/meson_options.txt b/meson_options.txt\nindex 10b541615..fab97591a 100644\n--- a/meson_options.txt\n+++ b/meson_options.txt\n@@ -2,8 +2,8 @@ option('allow_invalid_socket_id', type: 'boolean', value: false,\n \tdescription: 'allow out-of-range NUMA socket id\\'s for platforms that don\\'t report the value correctly')\n option('drivers_install_subdir', type: 'string', value: 'dpdk/pmds-<VERSION>',\n \tdescription: 'Subdirectory of libdir where to install PMDs. Defaults to using a versioned subdirectory.')\n-option('enable_driver_mlx_glue', type: 'boolean', value: false,\n-\tdescription: 'Enable glue library for Mellanox PMDs')\n+option('ibverbs_link', type: 'string', value: 'shared',\n+\tdescription: 'Linkage method (shared/dlopen) for Mellanox PMDs with ibverbs dependencies.')\n option('enable_kmods', type: 'boolean', value: true,\n \tdescription: 'build kernel modules')\n option('enable_docs', type: 'boolean', value: false,\ndiff --git a/mk/rte.app.mk b/mk/rte.app.mk\nindex 02e8b6f05..d5b1ec6b7 100644\n--- a/mk/rte.app.mk\n+++ b/mk/rte.app.mk\n@@ -169,15 +169,14 @@ ifeq ($(CONFIG_RTE_LIBRTE_KNI),y)\n _LDLIBS-$(CONFIG_RTE_LIBRTE_PMD_KNI) += -lrte_pmd_kni\n endif\n _LDLIBS-$(CONFIG_RTE_LIBRTE_LIO_PMD) += -lrte_pmd_lio\n-ifeq ($(CONFIG_RTE_LIBRTE_MLX4_DLOPEN_DEPS),y)\n-_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += -lrte_pmd_mlx4 -ldl\n+_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += -lrte_pmd_mlx4\n+_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += -lrte_pmd_mlx5 -lmnl\n+ifeq ($(CONFIG_RTE_IBVERBS_LINK_DLOPEN),y)\n+_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += -ldl\n+_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += -ldl\n else\n-_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += -lrte_pmd_mlx4 -libverbs -lmlx4\n-endif\n-ifeq ($(CONFIG_RTE_LIBRTE_MLX5_DLOPEN_DEPS),y)\n-_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += -lrte_pmd_mlx5 -ldl -lmnl\n-else\n-_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += -lrte_pmd_mlx5 -libverbs -lmlx5 -lmnl\n+_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX4_PMD) += -libverbs -lmlx4\n+_LDLIBS-$(CONFIG_RTE_LIBRTE_MLX5_PMD) += -libverbs -lmlx5\n endif\n _LDLIBS-$(CONFIG_RTE_LIBRTE_MVPP2_PMD) += -lrte_pmd_mvpp2\n _LDLIBS-$(CONFIG_RTE_LIBRTE_MVNETA_PMD) += -lrte_pmd_mvneta\n", "prefixes": [ "1/2" ] }{ "id": 49502, "url": "