From patchwork Fri Jun 8 16:38:01 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 40853 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 37A4C1BA9E; Fri, 8 Jun 2018 18:38:24 +0200 (CEST) Received: from mga07.intel.com (mga07.intel.com [134.134.136.100]) by dpdk.org (Postfix) with ESMTP id 4AC581B20D for ; Fri, 8 Jun 2018 18:38:23 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by orsmga105.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jun 2018 09:38:21 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,490,1520924400"; d="scan'208";a="46302014" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.223]) by fmsmga008.fm.intel.com with ESMTP; 08 Jun 2018 09:38:20 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Date: Fri, 8 Jun 2018 17:38:01 +0100 Message-Id: <20180608163807.66737-2-bruce.richardson@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180608163807.66737-1-bruce.richardson@intel.com> References: <20180608163807.66737-1-bruce.richardson@intel.com> Subject: [dpdk-dev] [PATCH 1/7] kni: disable for 32-bit meson builds X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The kni library is not supported on 32-bit so disable it for those builds using meson. Signed-off-by: Bruce Richardson Acked-by: Ferruh Yigit --- lib/librte_kni/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/librte_kni/meson.build b/lib/librte_kni/meson.build index c4b21961c..a738a033a 100644 --- a/lib/librte_kni/meson.build +++ b/lib/librte_kni/meson.build @@ -1,7 +1,7 @@ # SPDX-License-Identifier: BSD-3-Clause # Copyright(c) 2017 Intel Corporation -if host_machine.system() != 'linux' +if host_machine.system() != 'linux' or cc.sizeof('void *') == 4 build = false endif version = 2 From patchwork Fri Jun 8 16:38:02 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 40855 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 0E0431BB3E; Fri, 8 Jun 2018 18:38:31 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 3CFD61BB3E for ; Fri, 8 Jun 2018 18:38:29 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jun 2018 09:38:28 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,490,1520924400"; d="scan'208";a="46302039" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.223]) by fmsmga008.fm.intel.com with ESMTP; 08 Jun 2018 09:38:27 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Date: Fri, 8 Jun 2018 17:38:02 +0100 Message-Id: <20180608163807.66737-3-bruce.richardson@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180608163807.66737-1-bruce.richardson@intel.com> References: <20180608163807.66737-1-bruce.richardson@intel.com> Subject: [dpdk-dev] [PATCH 2/7] bpf: fix 32-bit build support with meson X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The JIT is only supported on x86_64 so disable for 32-bit builds. Fixes: cc752e43e079 ("bpf: add JIT compilation for x86_64 ISA") Signed-off-by: Bruce Richardson Acked-by: Konstantin Ananyev --- lib/librte_bpf/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/librte_bpf/meson.build b/lib/librte_bpf/meson.build index de9de0091..bc0cd78f9 100644 --- a/lib/librte_bpf/meson.build +++ b/lib/librte_bpf/meson.build @@ -8,7 +8,7 @@ sources = files('bpf.c', 'bpf_pkt.c', 'bpf_validate.c') -if arch_subdir == 'x86' +if arch_subdir == 'x86' and cc.sizeof('void *') == 8 sources += files('bpf_jit_x86.c') endif From patchwork Fri Jun 8 16:38:03 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 40856 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 491FA1BB52; Fri, 8 Jun 2018 18:38:33 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id CEFF31BB47 for ; Fri, 8 Jun 2018 18:38:31 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jun 2018 09:38:31 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,490,1520924400"; d="scan'208";a="46302055" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.223]) by fmsmga008.fm.intel.com with ESMTP; 08 Jun 2018 09:38:30 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Date: Fri, 8 Jun 2018 17:38:03 +0100 Message-Id: <20180608163807.66737-4-bruce.richardson@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180608163807.66737-1-bruce.richardson@intel.com> References: <20180608163807.66737-1-bruce.richardson@intel.com> Subject: [dpdk-dev] [PATCH 3/7] net/sfc: disable for 32-bit builds X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" The sfc driver is not supported on 32-bit so disable in meson in those cases. Signed-off-by: Bruce Richardson Acked-by: Andrew Rybchenko --- drivers/net/sfc/meson.build | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/sfc/meson.build b/drivers/net/sfc/meson.build index 3aa14c7bd..2d34e869d 100644 --- a/drivers/net/sfc/meson.build +++ b/drivers/net/sfc/meson.build @@ -6,7 +6,7 @@ # This software was jointly developed between OKTET Labs (under contract # for Solarflare) and Solarflare Communications, Inc. -if arch_subdir != 'x86' +if arch_subdir != 'x86' or cc.sizeof('void *') == 4 build = false endif From patchwork Fri Jun 8 16:38:04 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 40857 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id A66D01BA9A; Fri, 8 Jun 2018 18:38:40 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id C1A861B20D for ; Fri, 8 Jun 2018 18:38:38 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jun 2018 09:38:38 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,490,1520924400"; d="scan'208";a="46302079" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.223]) by fmsmga008.fm.intel.com with ESMTP; 08 Jun 2018 09:38:37 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Date: Fri, 8 Jun 2018 17:38:04 +0100 Message-Id: <20180608163807.66737-5-bruce.richardson@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180608163807.66737-1-bruce.richardson@intel.com> References: <20180608163807.66737-1-bruce.richardson@intel.com> Subject: [dpdk-dev] [PATCH 4/7] build: disable pointer to int conversion warnings for 32-bit X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Converting a 32-bit pointer to a 64-bit integer is generally safe, but generates a lot of warnings when compiling 32-bit code with meson. The warnings are not flagged when using make, so just disable them for 32-bit meson builds. Signed-off-by: Bruce Richardson --- config/meson.build | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/config/meson.build b/config/meson.build index 50081b572..1531d9f0e 100644 --- a/config/meson.build +++ b/config/meson.build @@ -60,6 +60,10 @@ warning_flags = [ '-Wno-address-of-packed-member', '-Wno-format-truncation' ] +if cc.sizeof('void *') == 4 +# for 32-bit, don't warn about casting a 32-bit pointer to 64-bit int - it's fine!! + warning_flags += '-Wno-pointer-to-int-cast' +endif foreach arg: warning_flags if cc.has_argument(arg) add_project_arguments(arg, language: 'c') From patchwork Fri Jun 8 16:38:05 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 40858 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 9B1E11BBA5; Fri, 8 Jun 2018 18:38:43 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 2A1A21BB83 for ; Fri, 8 Jun 2018 18:38:42 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jun 2018 09:38:41 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,490,1520924400"; d="scan'208";a="46302099" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.223]) by fmsmga008.fm.intel.com with ESMTP; 08 Jun 2018 09:38:41 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson , hemant.agrawal@nxp.com Date: Fri, 8 Jun 2018 17:38:05 +0100 Message-Id: <20180608163807.66737-6-bruce.richardson@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180608163807.66737-1-bruce.richardson@intel.com> References: <20180608163807.66737-1-bruce.richardson@intel.com> Subject: [dpdk-dev] [PATCH 5/7] dpaa2: fix default IOVA build setting for meson builds X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" By default, the DPAA2_USE_PHYS_IOVA setting with the make build-system is "y", which is overridden to "n" in the config file specifically for the arm64-dpaa2-linuxapp-gcc builds. The lack of this setting in meson builds causes issues for 32-bit build, as the alternative code paths have compiler warnings e.g. for i686 builds. Therefore we should align the meson and make settings, setting the value to "true" by default and overriding it to "false" for dpaa2-specific builds. Fixes: 6ec78c2463ac ("build: add meson support for dpaaX platforms") Cc: hemant.agrawal@nxp.com Signed-off-by: Bruce Richardson Acked-by: Hemant Agrawal --- config/arm/meson.build | 2 +- config/meson.build | 1 + 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/config/arm/meson.build b/config/arm/meson.build index 5ad926eda..40dbc87f7 100644 --- a/config/arm/meson.build +++ b/config/arm/meson.build @@ -64,7 +64,7 @@ flags_dpaa2 = [ ['RTE_CACHE_LINE_SIZE', 64], ['RTE_MAX_NUMA_NODES', 1], ['RTE_MAX_LCORE', 16], - ['RTE_LIBRTE_DPAA2_USE_PHYS_IOVA', 'n']] + ['RTE_LIBRTE_DPAA2_USE_PHYS_IOVA', false]] ## Arm implementer ID (ARM DDI 0487C.a, Section G7.2.106, Page G7-5321) impl_generic = ['Generic armv8', flags_generic, machine_args_generic] diff --git a/config/meson.build b/config/meson.build index 1531d9f0e..7a84fa8d0 100644 --- a/config/meson.build +++ b/config/meson.build @@ -78,6 +78,7 @@ dpdk_conf.set('RTE_EAL_ALLOW_INV_SOCKET_ID', get_option('allow_invalid_socket_id # values which have defaults which may be overridden dpdk_conf.set('RTE_MAX_VFIO_GROUPS', 64) dpdk_conf.set('RTE_DRIVER_MEMPOOL_BUCKET_SIZE_KB', 64) +dpdk_conf.set('RTE_LIBRTE_DPAA2_USE_PHYS_IOVA', true) compile_time_cpuflags = [] if host_machine.cpu_family().startswith('x86') From patchwork Fri Jun 8 16:38:06 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 40859 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id DEEB01BB8D; Fri, 8 Jun 2018 18:38:47 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 3437F1B20D for ; Fri, 8 Jun 2018 18:38:46 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jun 2018 09:38:45 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,490,1520924400"; d="scan'208";a="46302109" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.223]) by fmsmga008.fm.intel.com with ESMTP; 08 Jun 2018 09:38:45 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson Date: Fri, 8 Jun 2018 17:38:06 +0100 Message-Id: <20180608163807.66737-7-bruce.richardson@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180608163807.66737-1-bruce.richardson@intel.com> References: <20180608163807.66737-1-bruce.richardson@intel.com> Subject: [dpdk-dev] [PATCH 6/7] examples/kni: fix dependency check for building with meson X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Rather than hard-coding the example app to be built only when a set of conditions are met, we can simplify things by having the app built when KNI library itself is available. That saves us duplicating the same set of restrictions on both library and example app. Fixes: 89f0711f9ddf ("examples: build some samples with meson") Signed-off-by: Bruce Richardson --- examples/kni/meson.build | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/examples/kni/meson.build b/examples/kni/meson.build index 0443ab99b..41b87f8b3 100644 --- a/examples/kni/meson.build +++ b/examples/kni/meson.build @@ -6,9 +6,8 @@ # To build this example as a standalone application with an already-installed # DPDK instance, use 'make' -if host_machine.system() != 'linux' - build = false -endif +# this app can be built if-and-only-if KNI library is buildable +build = dpdk_conf.has('LIB_LIBRTE_KNI') deps += ['kni', 'bus_pci'] sources = files( 'main.c' From patchwork Fri Jun 8 16:38:07 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 40860 X-Patchwork-Delegate: thomas@monjalon.net Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 72F0E1CDF7; Fri, 8 Jun 2018 18:38:52 +0200 (CEST) Received: from mga17.intel.com (mga17.intel.com [192.55.52.151]) by dpdk.org (Postfix) with ESMTP id 2160E1CDF5 for ; Fri, 8 Jun 2018 18:38:49 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga008.fm.intel.com ([10.253.24.58]) by fmsmga107.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 08 Jun 2018 09:38:49 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.49,490,1520924400"; d="scan'208";a="46302114" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.223]) by fmsmga008.fm.intel.com with ESMTP; 08 Jun 2018 09:38:48 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: Bruce Richardson , allain.legacy@windriver.com Date: Fri, 8 Jun 2018 17:38:07 +0100 Message-Id: <20180608163807.66737-8-bruce.richardson@intel.com> X-Mailer: git-send-email 2.17.1 In-Reply-To: <20180608163807.66737-1-bruce.richardson@intel.com> References: <20180608163807.66737-1-bruce.richardson@intel.com> Subject: [dpdk-dev] [PATCH 7/7] net/avp: fix 32-bit meson builds X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" When compiling with meson, extra warnings are enabled about casting from integers to different size pointers. This triggers an error in AVP as the addition of the offset to the pointer address causes the result to be a 64-bit integer which doesn't fit a 32-bit pointer. The fix here is to explicitly indicate that the offset is of type "uintptr_t" which prevents any promotion which would cause errors. Fixes: c0ad584222b5 ("net/avp: add device initialization") Cc: allain.legacy@windriver.com Signed-off-by: Bruce Richardson Acked-by: Allain Legacy --- drivers/net/avp/avp_ethdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/net/avp/avp_ethdev.c b/drivers/net/avp/avp_ethdev.c index dc97e60e6..5e859c8dd 100644 --- a/drivers/net/avp/avp_ethdev.c +++ b/drivers/net/avp/avp_ethdev.c @@ -383,7 +383,7 @@ avp_dev_translate_address(struct rte_eth_dev *eth_dev, (host_phys_addr < (map->phys_addr + map->length))) { /* address is within this segment */ offset += (host_phys_addr - map->phys_addr); - addr = RTE_PTR_ADD(addr, offset); + addr = RTE_PTR_ADD(addr, (uintptr_t)offset); PMD_DRV_LOG(DEBUG, "Translating host physical 0x%" PRIx64 " to guest virtual 0x%p\n", host_phys_addr, addr);