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 58B00A04FD; Mon, 12 Dec 2022 05:05:59 +0100 (CET) Received: from mails.dpdk.org (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id E7BD14021D; Mon, 12 Dec 2022 05:05:58 +0100 (CET) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by mails.dpdk.org (Postfix) with ESMTP id 121B340151; Mon, 12 Dec 2022 05:05:56 +0100 (CET) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1670817957; x=1702353957; h=from:to:cc:subject:date:message-id:mime-version: content-transfer-encoding; bh=lUtbKE1WPcGVf2EnOPqcyg1ySh48kDbpMOBjvcDcWVk=; b=PFSyrovSeESe9J6sy/HJs82tpeZizFhh17AO2dNOIkBPP1Gv8VOPW48+ EQcEI0ZdvfjD3JvVAoUKQ9JD1tdS9OGbT/QXNxoSDx6+M2Pf/8i6DEjIb W0gSouWVBISiuwos/EUoaOSdJZ7makGdwUKbJ34Dcp2HlmmDBjMoScv8q LuIoOHqwHIN4cKDkAQluqTdGykq0Z5K9iQvzYtHvI/69c6QWsB9VlYlms 9uQRDdZFLhAjkdUXtZYBc3BHvxPovHCj7li0ptE5Xyza9ml+nsFTc15k5 np6prA5bICrUgHQXSzSshfm86ENegyDMkKti6t3zsHo5CUWHuaP8Qj6Pm Q==; X-IronPort-AV: E=McAfee;i="6500,9779,10558"; a="298108399" X-IronPort-AV: E=Sophos;i="5.96,237,1665471600"; d="scan'208";a="298108399" Received: from orsmga004.jf.intel.com ([10.7.209.38]) by fmsmga107.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 11 Dec 2022 20:05:54 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6500,9779,10558"; a="772453777" X-IronPort-AV: E=Sophos;i="5.96,237,1665471600"; d="scan'208";a="772453777" Received: from dpdk-qzhan15-test02.sh.intel.com ([10.67.115.4]) by orsmga004.jf.intel.com with ESMTP; 11 Dec 2022 20:05:52 -0800 From: Qi Zhang To: mb@smartsharesystems.com, bruce.richardson@intel.com, wenzhuo.lu@intel.com Cc: dev@dpdk.org, wenjun1.wu@intel.com, Qi Zhang , stable@dpdk.org Subject: [PATCH] net: not compile PMD AVX library when no IOVA as PA Date: Mon, 12 Dec 2022 07:17:11 -0500 Message-Id: <20221212121711.857866-1-qi.z.zhang@intel.com> X-Mailer: git-send-email 2.31.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 PMD not announce pmd_supports_disable_iova_as_pa will not be build when RTE_IOVA_AS_PA is not defined, but some AVX library for vector path is not skipped by the build system which cause compile error. The patch modify i40e, iavf, ice's meson file to skip AVX library build when RTE_IOVA_AS_PA is not defined. Cc: stable@dpdk.org Signed-off-by: Qi Zhang --- drivers/net/i40e/meson.build | 6 ++++-- drivers/net/iavf/meson.build | 6 ++++-- drivers/net/ice/meson.build | 6 ++++-- 3 files changed, 12 insertions(+), 6 deletions(-) diff --git a/drivers/net/i40e/meson.build b/drivers/net/i40e/meson.build index e00c1a9ef9..0001d4816b 100644 --- a/drivers/net/i40e/meson.build +++ b/drivers/net/i40e/meson.build @@ -37,6 +37,7 @@ testpmd_sources = files('i40e_testpmd.c') deps += ['hash'] includes += include_directories('base') +iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA') if arch_subdir == 'x86' sources += files('i40e_rxtx_vec_sse.c') @@ -51,7 +52,7 @@ if arch_subdir == 'x86' if cc.get_define('__AVX2__', args: machine_args) != '' cflags += ['-DCC_AVX2_SUPPORT'] sources += files('i40e_rxtx_vec_avx2.c') - elif cc.has_argument('-mavx2') + elif iova_as_pa == true and cc.has_argument('-mavx2') cflags += ['-DCC_AVX2_SUPPORT'] i40e_avx2_lib = static_library('i40e_avx2_lib', 'i40e_rxtx_vec_avx2.c', @@ -71,7 +72,8 @@ if arch_subdir == 'x86' cc.has_argument('-mavx512f') and cc.has_argument('-mavx512bw')) - if i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true + if iova_as_pa == true and + (i40e_avx512_cpu_support == true or i40e_avx512_cc_support == true) cflags += ['-DCC_AVX512_SUPPORT'] avx512_args = [cflags, '-mavx512f', '-mavx512bw'] if cc.has_argument('-march=skylake-avx512') diff --git a/drivers/net/iavf/meson.build b/drivers/net/iavf/meson.build index 6df771f917..90428fa2d8 100644 --- a/drivers/net/iavf/meson.build +++ b/drivers/net/iavf/meson.build @@ -6,6 +6,7 @@ cflags += ['-Wno-strict-aliasing'] includes += include_directories('../../common/iavf') deps += ['common_iavf', 'security', 'cryptodev'] +iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA') sources = files( 'iavf_ethdev.c', @@ -32,7 +33,7 @@ if arch_subdir == 'x86' if cc.get_define('__AVX2__', args: machine_args) != '' cflags += ['-DCC_AVX2_SUPPORT'] sources += files('iavf_rxtx_vec_avx2.c') - elif cc.has_argument('-mavx2') + elif iova_as_pa == true and cc.has_argument('-mavx2') cflags += ['-DCC_AVX2_SUPPORT'] iavf_avx2_lib = static_library('iavf_avx2_lib', 'iavf_rxtx_vec_avx2.c', @@ -52,7 +53,8 @@ if arch_subdir == 'x86' cc.has_argument('-mavx512f') and cc.has_argument('-mavx512bw')) - if iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true + if iova_as_pa == true and + (iavf_avx512_cpu_support == true or iavf_avx512_cc_support == true) cflags += ['-DCC_AVX512_SUPPORT'] avx512_args = [cflags, '-mavx512f', '-mavx512bw'] if cc.has_argument('-march=skylake-avx512') diff --git a/drivers/net/ice/meson.build b/drivers/net/ice/meson.build index 528e77613e..5d17039789 100644 --- a/drivers/net/ice/meson.build +++ b/drivers/net/ice/meson.build @@ -20,6 +20,7 @@ testpmd_sources = files('ice_testpmd.c') deps += ['hash', 'net', 'common_iavf'] includes += include_directories('base', '../../common/iavf') +iova_as_pa = dpdk_conf.get('RTE_IOVA_AS_PA') if arch_subdir == 'x86' sources += files('ice_rxtx_vec_sse.c') @@ -34,7 +35,7 @@ if arch_subdir == 'x86' if cc.get_define('__AVX2__', args: machine_args) != '' cflags += ['-DCC_AVX2_SUPPORT'] sources += files('ice_rxtx_vec_avx2.c') - elif cc.has_argument('-mavx2') + elif iova_as_pa == true and cc.has_argument('-mavx2') cflags += ['-DCC_AVX2_SUPPORT'] ice_avx2_lib = static_library('ice_avx2_lib', 'ice_rxtx_vec_avx2.c', @@ -55,7 +56,8 @@ if arch_subdir == 'x86' cc.has_argument('-mavx512bw') ) - if ice_avx512_cpu_support == true or ice_avx512_cc_support == true + if iova_as_pa == true and + (avx512_cpu_support == true or ice_avx512_cc_support == true) cflags += ['-DCC_AVX512_SUPPORT'] avx512_args = [cflags, '-mavx512f', '-mavx512bw'] if cc.has_argument('-march=skylake-avx512') -- 2.31.1