From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id DEC6041CDD; Sun, 19 Feb 2023 12:55:49 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 770FB40E2D; Sun, 19 Feb 2023 12:55:49 +0100 (CET) Received: from out5-smtp.messagingengine.com (out5-smtp.messagingengine.com [66.111.4.29]) by mails.dpdk.org (Postfix) with ESMTP id 1099F40698; Sun, 19 Feb 2023 12:55:47 +0100 (CET) Received: from compute5.internal (compute5.nyi.internal [10.202.2.45]) by mailout.nyi.internal (Postfix) with ESMTP id 856235C00AE; Sun, 19 Feb 2023 06:55:46 -0500 (EST) Received: from mailfrontend2 ([10.202.2.163]) by compute5.internal (MEProxy); Sun, 19 Feb 2023 06:55:46 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= cc:cc:content-transfer-encoding:date:date:from:from:in-reply-to :message-id:mime-version:reply-to:sender:subject:subject:to:to; s=fm1; t=1676807746; x=1676894146; bh=tOpnMrUaMcAHKH/eiXH0W23tN mtOblq7Tt4tSlqa90o=; b=GHTcOMKFrv+eZQWLxLowDGwCU2OGh/OYUUnIFGFpQ vaMbYoUMHm9MPF3iKcI+uOlRVLyJ16Df77S55ROE/lxSmB6/gZxnmMef7H8aGorm wcc+6aoKpUc6cHZY14Zz/4ooCukRe5l7BKtLehy603Z2wKMRsMMe08/GcUYQDctT AsAqhKeeWcnDKGy0n74//WfY/nCETXuQuQIxqX3wwV+9/C8oRdGmzw6XeOFrMlPn 1DiJD7jij7U+y2HykxmxTme2YYm3Uy8jXRYyOdRv686FdO0RHpXqPyPn82TQU8Gs +HvS1xxUOwIfnIz5z2IXF6iZ/slbPWvnp0CYsNmeG/Yww== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-transfer-encoding:date:date :feedback-id:feedback-id:from:from:in-reply-to:message-id :mime-version:reply-to:sender:subject:subject:to:to:x-me-proxy :x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s=fm1; t= 1676807746; x=1676894146; bh=tOpnMrUaMcAHKH/eiXH0W23tNmtOblq7Tt4 tSlqa90o=; b=IzwNfsykwKBCprH5CRKXrEhjKmeMWzbdt2mFTWUGnzB9m3i7Uzu 3N8hA0Jcc48SBmr0IRlEldM0cpvtJG8iBdjzzTKqgxWvkBlUfv7Ocg++guzdev2s 1jg8Jver93Imkp8ddqgmD358o/YBcoRM1DTLjMbY0KiYFpF2cQAbJChZ/IvAL6Y/ IuJnF9wgGZ8bgTBFry+Ibtd/MiIeeD13DZdJeygCipcFW21IyLT+uYn1rqKdvOGs /I2EhI/aFDTWthv64ytogCnfvjBOxoXJLPQi2iYRo6+sex5XE0PtfI060uqOMIAR uKvVwEv5mk7jztre+n6tPH2cSKJfaIdOPHQ== X-ME-Sender: X-ME-Received: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvhedrudejfedgfeegucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucesvcftvggtihhpihgvnhhtshculddquddttddmne cujfgurhephffvvefufffkofgggfestdekredtredttdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucggtf frrghtthgvrhhnpeevveefveeiiefhtedukeegkeelieegffeukeevudetueffieduveet iedukeefleenucevlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepmhgrihhlfhhroh hmpehthhhomhgrshesmhhonhhjrghlohhnrdhnvght X-ME-Proxy: Feedback-ID: i47234305:Fastmail Received: by mail.messagingengine.com (Postfix) with ESMTPA; Sun, 19 Feb 2023 06:55:43 -0500 (EST) From: Thomas Monjalon To: dev@dpdk.org Cc: David Marchand , Bruce Richardson , Qi Zhang , stable@dpdk.org, Jingjing Wu , Beilei Xing , Timothy McDaniel , Ajit Khaparde , Somnath Kotur , John Daley , Hyong Youb Kim , Dongdong Liu , Yisen Zhuang , Yuying Zhang , Maxime Coquelin , Chenbo Xia , Shijith Thotton , Olivier Matz Subject: [PATCH] drivers: skip build of sub-libs not supporting IOVA mode Date: Sun, 19 Feb 2023 12:55:29 +0100 Message-Id: <20230219115529.3260580-1-thomas@monjalon.net> X-Mailer: git-send-email 2.39.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org If IOVA as PA is disabled and the driver does not support IOVA as VA, the build of the driver was disabled. Unfortunately some drivers were building some sub-libraries (with specific options for vector paths) which were not disabled. The build parsing of those drivers need to be skipped earlier to avoid defining the sub-libraries. Fixes: a986c2b7973d ("build: add option to configure IOVA mode as PA") Cc: stable@dpdk.org Signed-off-by: Thomas Monjalon --- drivers/common/idpf/meson.build | 4 ++++ drivers/event/dlb2/meson.build | 5 ++++- drivers/meson.build | 4 ++-- drivers/net/bnxt/meson.build | 4 ++++ drivers/net/enic/meson.build | 4 ++++ drivers/net/hns3/meson.build | 4 +--- drivers/net/i40e/meson.build | 4 ++++ drivers/net/iavf/meson.build | 3 +++ drivers/net/virtio/meson.build | 4 ++++ 9 files changed, 30 insertions(+), 6 deletions(-) diff --git a/drivers/common/idpf/meson.build b/drivers/common/idpf/meson.build index 58059ef443..74c0e92cac 100644 --- a/drivers/common/idpf/meson.build +++ b/drivers/common/idpf/meson.build @@ -1,6 +1,10 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2022 Intel Corporation +if not get_option('enable_iova_as_pa') + subdir_done() +endif + deps += ['mbuf'] sources = files( diff --git a/drivers/event/dlb2/meson.build b/drivers/event/dlb2/meson.build index a2e60273c5..8ae7db0011 100644 --- a/drivers/event/dlb2/meson.build +++ b/drivers/event/dlb2/meson.build @@ -1,4 +1,3 @@ - # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2019-2020 Intel Corporation @@ -8,6 +7,10 @@ if not is_linux or not dpdk_conf.has('RTE_ARCH_X86_64') subdir_done() endif +if not get_option('enable_iova_as_pa') + subdir_done() +endif + sources = files( 'dlb2.c', 'dlb2_iface.c', diff --git a/drivers/meson.build b/drivers/meson.build index 0618c31a69..9c10e2633d 100644 --- a/drivers/meson.build +++ b/drivers/meson.build @@ -127,9 +127,9 @@ foreach subpath:subdirs # pull in driver directory which should update all the local variables subdir(drv_path) - if dpdk_conf.get('RTE_IOVA_AS_PA') == 0 and not pmd_supports_disable_iova_as_pa and not always_enable.contains(drv_path) + if not get_option('enable_iova_as_pa') and not pmd_supports_disable_iova_as_pa and not always_enable.contains(drv_path) build = false - reason = 'driver does not support disabling IOVA as PA mode' + reason = 'IOVA as VA not supported' endif # get dependency objs from strings diff --git a/drivers/net/bnxt/meson.build b/drivers/net/bnxt/meson.build index 09d494e90f..c9ca09089a 100644 --- a/drivers/net/bnxt/meson.build +++ b/drivers/net/bnxt/meson.build @@ -8,6 +8,10 @@ if is_windows subdir_done() endif +if not get_option('enable_iova_as_pa') + subdir_done() +endif + headers = files('rte_pmd_bnxt.h') cflags_options = [ '-DSUPPORT_CFA_HW_ALL=1', diff --git a/drivers/net/enic/meson.build b/drivers/net/enic/meson.build index 7131a25f09..f1f7f5432a 100644 --- a/drivers/net/enic/meson.build +++ b/drivers/net/enic/meson.build @@ -7,6 +7,10 @@ if is_windows subdir_done() endif +if not get_option('enable_iova_as_pa') + subdir_done() +endif + sources = files( 'base/vnic_cq.c', 'base/vnic_dev.c', diff --git a/drivers/net/hns3/meson.build b/drivers/net/hns3/meson.build index e1a5afa2ec..743fae9db7 100644 --- a/drivers/net/hns3/meson.build +++ b/drivers/net/hns3/meson.build @@ -13,9 +13,7 @@ if arch_subdir != 'x86' and arch_subdir != 'arm' or not dpdk_conf.get('RTE_ARCH_ subdir_done() endif -if dpdk_conf.get('RTE_IOVA_AS_PA') == 0 - build = false - reason = 'driver does not support disabling IOVA as PA mode' +if not get_option('enable_iova_as_pa') subdir_done() endif diff --git a/drivers/net/i40e/meson.build b/drivers/net/i40e/meson.build index e00c1a9ef9..689606a1de 100644 --- a/drivers/net/i40e/meson.build +++ b/drivers/net/i40e/meson.build @@ -13,6 +13,10 @@ if arch_subdir == 'riscv' subdir_done() endif +if not get_option('enable_iova_as_pa') + subdir_done() +endif + cflags += ['-DPF_DRIVER', '-DVF_DRIVER', '-DINTEGRATED_VF', diff --git a/drivers/net/iavf/meson.build b/drivers/net/iavf/meson.build index 6df771f917..c95503adda 100644 --- a/drivers/net/iavf/meson.build +++ b/drivers/net/iavf/meson.build @@ -1,6 +1,9 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2018 Luca Boccassi +if not get_option('enable_iova_as_pa') + subdir_done() +endif cflags += ['-Wno-strict-aliasing'] diff --git a/drivers/net/virtio/meson.build b/drivers/net/virtio/meson.build index 0ffd77024e..b8ba1807fa 100644 --- a/drivers/net/virtio/meson.build +++ b/drivers/net/virtio/meson.build @@ -7,6 +7,10 @@ if is_windows subdir_done() endif +if not get_option('enable_iova_as_pa') + subdir_done() +endif + sources += files( 'virtio.c', 'virtio_cvq.c', -- 2.39.1