From patchwork Mon Oct 7 14:30:10 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 60620 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 44F321C1C3; Mon, 7 Oct 2019 16:30:29 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id D43541C1A2 for ; Mon, 7 Oct 2019 16:30:25 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Oct 2019 07:30:22 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.67,268,1566889200"; d="scan'208";a="368131090" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.2]) by orsmga005.jf.intel.com with ESMTP; 07 Oct 2019 07:30:20 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: bluca@debian.org, Bruce Richardson Date: Mon, 7 Oct 2019 15:30:10 +0100 Message-Id: <20191007143013.16252-2-bruce.richardson@intel.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191007143013.16252-1-bruce.richardson@intel.com> References: <20190725143831.25116-1-bruce.richardson@intel.com> <20191007143013.16252-1-bruce.richardson@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v2 1/4] build: allow compile with stricter fallthrough warnings 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" DPDK currently compiles with implicit-fallthrough=2 warning level. With gcc -Wextra flag, the default level is 3, so some minor changes are needed to support this in DPDK. Signed-off-by: Bruce Richardson Acked-by: Luca Boccassi --- drivers/net/bonding/rte_eth_bond_pmd.c | 3 ++- drivers/net/fm10k/base/meson.build | 3 ++- lib/librte_cmdline/cmdline_parse_num.c | 2 +- 3 files changed, 5 insertions(+), 3 deletions(-) diff --git a/drivers/net/bonding/rte_eth_bond_pmd.c b/drivers/net/bonding/rte_eth_bond_pmd.c index 97ab3f29f..a28827b35 100644 --- a/drivers/net/bonding/rte_eth_bond_pmd.c +++ b/drivers/net/bonding/rte_eth_bond_pmd.c @@ -2385,7 +2385,8 @@ bond_ethdev_link_update(struct rte_eth_dev *ethdev, int wait_to_complete) bond_ctx->mode4.slave_link.link_autoneg; ethdev->data->dev_link.link_duplex = bond_ctx->mode4.slave_link.link_duplex; - /* fall through to update link speed */ + /* fall through */ + /* to update link speed */ case BONDING_MODE_ROUND_ROBIN: case BONDING_MODE_BALANCE: case BONDING_MODE_TLB: diff --git a/drivers/net/fm10k/base/meson.build b/drivers/net/fm10k/base/meson.build index 5525cdc82..9e1022fef 100644 --- a/drivers/net/fm10k/base/meson.build +++ b/drivers/net/fm10k/base/meson.build @@ -12,7 +12,8 @@ sources = [ error_cflags = ['-Wno-unused-parameter', '-Wno-unused-value', '-Wno-strict-aliasing', '-Wno-format-extra-args', - '-Wno-unused-variable', '-Wno-missing-field-initializers' + '-Wno-unused-variable', '-Wno-missing-field-initializers', + '-Wno-implicit-fallthrough' ] c_args = cflags if allow_experimental_apis diff --git a/lib/librte_cmdline/cmdline_parse_num.c b/lib/librte_cmdline/cmdline_parse_num.c index 182ac12f0..478f181b4 100644 --- a/lib/librte_cmdline/cmdline_parse_num.c +++ b/lib/librte_cmdline/cmdline_parse_num.c @@ -196,7 +196,7 @@ cmdline_parse_num(cmdline_parse_token_hdr_t *tk, const char *srcbuf, void *res, case HEX: st = HEX_OK; - /* fall-through no break */ + /* fall-through */ case HEX_OK: if (c >= '0' && c <= '9') { if (add_to_res(c - '0', &res1, 16) < 0) From patchwork Mon Oct 7 14:30:11 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 60621 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 440E41C1E5; Mon, 7 Oct 2019 16:30:31 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 075F31C1AA for ; Mon, 7 Oct 2019 16:30:25 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Oct 2019 07:30:24 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.67,268,1566889200"; d="scan'208";a="368131106" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.2]) by orsmga005.jf.intel.com with ESMTP; 07 Oct 2019 07:30:23 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: bluca@debian.org, Bruce Richardson Date: Mon, 7 Oct 2019 15:30:11 +0100 Message-Id: <20191007143013.16252-3-bruce.richardson@intel.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191007143013.16252-1-bruce.richardson@intel.com> References: <20190725143831.25116-1-bruce.richardson@intel.com> <20191007143013.16252-1-bruce.richardson@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v2 2/4] raw/ifpga: remove unneeded compiler flags 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 warning disable flags for the base driver code were copy-pasted from another source, and are actually unnecessary for this driver. Therefore remove them. Signed-off-by: Bruce Richardson Acked-by: Luca Boccassi --- drivers/raw/ifpga/base/meson.build | 11 ----------- 1 file changed, 11 deletions(-) diff --git a/drivers/raw/ifpga/base/meson.build b/drivers/raw/ifpga/base/meson.build index f1015bbee..69f659886 100644 --- a/drivers/raw/ifpga/base/meson.build +++ b/drivers/raw/ifpga/base/meson.build @@ -23,17 +23,6 @@ sources = [ 'opae_eth_group.c', ] -error_cflags = ['-Wno-sign-compare', '-Wno-unused-value', - '-Wno-format', '-Wno-error=format-security', - '-Wno-strict-aliasing', '-Wno-unused-but-set-variable' -] -c_args = cflags -foreach flag: error_cflags - if cc.has_argument(flag) - c_args += flag - endif -endforeach - base_lib = static_library('ifpga_rawdev_base', sources, dependencies: static_rte_eal, c_args: c_args) From patchwork Mon Oct 7 14:30:12 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 60622 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 5406B1C241; Mon, 7 Oct 2019 16:30:33 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 36BE21C1BC for ; Mon, 7 Oct 2019 16:30:28 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Oct 2019 07:30:27 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.67,268,1566889200"; d="scan'208";a="368131120" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.2]) by orsmga005.jf.intel.com with ESMTP; 07 Oct 2019 07:30:26 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: bluca@debian.org, Bruce Richardson Date: Mon, 7 Oct 2019 15:30:12 +0100 Message-Id: <20191007143013.16252-4-bruce.richardson@intel.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191007143013.16252-1-bruce.richardson@intel.com> References: <20190725143831.25116-1-bruce.richardson@intel.com> <20191007143013.16252-1-bruce.richardson@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v2 3/4] build: enable extra warnings for meson build 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" While meson always adds -Wall flag to C compiles, the make build adds extra warning flags that are not present in the meson build. This addresses that shortcoming by adding additional warning flags to our builds. The one omission is the -Wcast-align flag, which though present in make gcc builds, gives a lot of warnings/errors when used with clang. The removed warning "-Wunused-parameter" is covered by the "-Wextra" parameter so is unnecessary. Signed-off-by: Bruce Richardson Acked-by: Luca Boccassi --- config/meson.build | 24 +++++++++++++++++++++--- drivers/bus/dpaa/meson.build | 3 +++ drivers/event/dsw/meson.build | 3 +++ drivers/net/dpaa/meson.build | 4 ++++ drivers/net/i40e/base/meson.build | 3 ++- 5 files changed, 33 insertions(+), 4 deletions(-) diff --git a/config/meson.build b/config/meson.build index 2bafea530..6918a9ecc 100644 --- a/config/meson.build +++ b/config/meson.build @@ -143,10 +143,28 @@ add_project_arguments('-include', 'rte_config.h', language: 'c') # enable extra warnings and disable any unwanted warnings warning_flags = [ - '-Wunused-parameter', - '-Wsign-compare', + # -Wall is added by meson by default, so add -Wextra only + '-Wextra', + + # additional warnings in alphabetical order '-Wcast-qual', - '-Wno-address-of-packed-member' + '-Wdeprecated', + '-Wformat-nonliteral', + '-Wformat-security', + '-Wmissing-declarations', + '-Wmissing-prototypes', + '-Wnested-externs', + '-Wold-style-definition', + '-Wpointer-arith', + '-Wsign-compare', + '-Wstrict-prototypes', + '-Wundef', + '-Wwrite-strings', + + # globally disabled warnings + '-Wno-address-of-packed-member', + '-Wno-packed-not-aligned', + '-Wno-missing-field-initializers' ] if not dpdk_conf.get('RTE_ARCH_64') # for 32-bit, don't warn about casting a 32-bit pointer to 64-bit int - it's fine!! diff --git a/drivers/bus/dpaa/meson.build b/drivers/bus/dpaa/meson.build index 19daaa5b5..c9c3b2415 100644 --- a/drivers/bus/dpaa/meson.build +++ b/drivers/bus/dpaa/meson.build @@ -27,5 +27,8 @@ allow_experimental_apis = true if cc.has_argument('-Wno-cast-qual') cflags += '-Wno-cast-qual' endif +if cc.has_argument('-Wno-pointer-arith') + cflags += '-Wno-pointer-arith' +endif includes += include_directories('include', 'base/qbman') diff --git a/drivers/event/dsw/meson.build b/drivers/event/dsw/meson.build index a3d09eef3..60ab13d90 100644 --- a/drivers/event/dsw/meson.build +++ b/drivers/event/dsw/meson.build @@ -2,4 +2,7 @@ # Copyright(c) 2018 Ericsson AB deps += ['bus_vdev'] +if cc.has_argument('-Wno-format-nonliteral') + cflags += '-Wno-format-nonliteral' +endif sources = files('dsw_evdev.c', 'dsw_event.c', 'dsw_xstats.c') diff --git a/drivers/net/dpaa/meson.build b/drivers/net/dpaa/meson.build index 94c0e22c5..542b44af4 100644 --- a/drivers/net/dpaa/meson.build +++ b/drivers/net/dpaa/meson.build @@ -10,6 +10,10 @@ deps += ['mempool_dpaa'] sources = files('dpaa_ethdev.c', 'dpaa_rxtx.c') +if cc.has_argument('-Wno-pointer-arith') + cflags += '-Wno-pointer-arith' +endif + allow_experimental_apis = true install_headers('rte_pmd_dpaa.h') diff --git a/drivers/net/i40e/base/meson.build b/drivers/net/i40e/base/meson.build index 13d16b08d..3dee8c975 100644 --- a/drivers/net/i40e/base/meson.build +++ b/drivers/net/i40e/base/meson.build @@ -12,7 +12,8 @@ sources = [ ] error_cflags = ['-Wno-sign-compare', '-Wno-unused-value', - '-Wno-format', '-Wno-error=format-security', + '-Wno-format', '-Wno-format-security', + '-Wno-format-nonliteral', '-Wno-strict-aliasing', '-Wno-unused-but-set-variable', '-Wno-unused-parameter', ] From patchwork Mon Oct 7 14:30:13 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Bruce Richardson X-Patchwork-Id: 60623 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 ED48B1C2A0; Mon, 7 Oct 2019 16:30:34 +0200 (CEST) Received: from mga12.intel.com (mga12.intel.com [192.55.52.136]) by dpdk.org (Postfix) with ESMTP id 2A6DF1C1CE for ; Mon, 7 Oct 2019 16:30:30 +0200 (CEST) X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from orsmga005.jf.intel.com ([10.7.209.41]) by fmsmga106.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 07 Oct 2019 07:30:29 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.67,268,1566889200"; d="scan'208";a="368131131" Received: from silpixa00399126.ir.intel.com (HELO silpixa00399126.ger.corp.intel.com) ([10.237.223.2]) by orsmga005.jf.intel.com with ESMTP; 07 Oct 2019 07:30:28 -0700 From: Bruce Richardson To: dev@dpdk.org Cc: bluca@debian.org, Bruce Richardson Date: Mon, 7 Oct 2019 15:30:13 +0100 Message-Id: <20191007143013.16252-5-bruce.richardson@intel.com> X-Mailer: git-send-email 2.21.0 In-Reply-To: <20191007143013.16252-1-bruce.richardson@intel.com> References: <20190725143831.25116-1-bruce.richardson@intel.com> <20191007143013.16252-1-bruce.richardson@intel.com> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v2 4/4] drivers: remove duplicated compiler flags 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" Now that -Wextra, and other warning flags are standard in the build, remove any duplication in driver build specifications. Signed-off-by: Bruce Richardson Acked-by: Luca Boccassi --- drivers/net/fm10k/base/meson.build | 2 +- drivers/net/mlx4/meson.build | 1 - drivers/net/mlx5/meson.build | 1 - drivers/net/sfc/meson.build | 2 -- drivers/net/vdev_netvsc/meson.build | 2 -- 5 files changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/net/fm10k/base/meson.build b/drivers/net/fm10k/base/meson.build index 9e1022fef..40d9b730a 100644 --- a/drivers/net/fm10k/base/meson.build +++ b/drivers/net/fm10k/base/meson.build @@ -12,7 +12,7 @@ sources = [ error_cflags = ['-Wno-unused-parameter', '-Wno-unused-value', '-Wno-strict-aliasing', '-Wno-format-extra-args', - '-Wno-unused-variable', '-Wno-missing-field-initializers', + '-Wno-unused-variable', '-Wno-implicit-fallthrough' ] c_args = cflags diff --git a/drivers/net/mlx4/meson.build b/drivers/net/mlx4/meson.build index efee45776..873edadac 100644 --- a/drivers/net/mlx4/meson.build +++ b/drivers/net/mlx4/meson.build @@ -55,7 +55,6 @@ if build sources += files('mlx4_glue.c') endif cflags_options = [ - '-Wextra', '-std=c11', '-Wno-strict-prototypes', '-D_BSD_SOURCE', diff --git a/drivers/net/mlx5/meson.build b/drivers/net/mlx5/meson.build index 3c5144c9b..94f92ad6b 100644 --- a/drivers/net/mlx5/meson.build +++ b/drivers/net/mlx5/meson.build @@ -66,7 +66,6 @@ if build sources += files('mlx5_glue.c') endif cflags_options = [ - '-Wextra', '-std=c11', '-Wno-strict-prototypes', '-D_BSD_SOURCE', diff --git a/drivers/net/sfc/meson.build b/drivers/net/sfc/meson.build index 4fb0d0ac1..8c54f9d54 100644 --- a/drivers/net/sfc/meson.build +++ b/drivers/net/sfc/meson.build @@ -20,14 +20,12 @@ extra_flags += '-Wno-strict-aliasing' # Enable more warnings extra_flags += [ - '-Wextra', '-Wdisabled-optimization' ] # Compiler and version dependent flags extra_flags += [ '-Waggregate-return', - '-Wnested-externs', '-Wbad-function-cast' ] diff --git a/drivers/net/vdev_netvsc/meson.build b/drivers/net/vdev_netvsc/meson.build index c82c5476c..bf62edb7a 100644 --- a/drivers/net/vdev_netvsc/meson.build +++ b/drivers/net/vdev_netvsc/meson.build @@ -10,8 +10,6 @@ sources = files('vdev_netvsc.c') allow_experimental_apis = true cflags_options = [ - '-Wall', - '-Wextra', '-D_BSD_SOURCE', '-D_DEFAULT_SOURCE', '-D_XOPEN_SOURCE=600'