DPDK patches and discussions
 help / color / mirror / Atom feed
From: Bruce Richardson <bruce.richardson@intel.com>
To: dev@dpdk.org
Cc: Bruce Richardson <bruce.richardson@intel.com>
Subject: [RFC PATCH 00/19] Fix building much of DPDK with -Wshadow
Date: Thu,  6 Nov 2025 14:09:29 +0000	[thread overview]
Message-ID: <20251106140948.2894678-1-bruce.richardson@intel.com> (raw)

As flagged in bugs #1742, #1743 and others, much of DPDK fails to build
when -Wshadow flag is passed to the build. This patchset fixes many
issues of this nature, but not all, in the hopes we can move towards
enabling that warning flag globally for DPDK in future. This patchset
fixes the following components in DPDK:

* all libraries
* Intel drivers
* testpmd

The following build now works on my system after this set is applied:

  meson setup -Denable_drivers=net/intel/* -Denable_apps=test-pmd --werror -Dc_args=-Wshadow build-shadow && ninja -C build-shadow

Bruce Richardson (19):
  eal: fix variable shadowing
  ethdev: fix variable shadowing issues
  eventdev: fix variable shadowing issues
  net: remove shadowed variable
  graph: fix variable shadowing errors
  pipeline: fix variable shadowing
  table: fix issues with variable shadowing
  power: rename variable to eliminate shadowing
  pcapng: rename variable to fix shadowing
  telemetry: make socket handler typedef private
  bbdev: fix variable shadowing
  bus/pci: remove shadowed variables
  net/intel: rename function param to avoid shadow warnings
  net/e1000: fix build with shadow warnings enabled
  net/i40e: fix build with shadow warnings enabled
  net/ice: fix build with shadow warnings enabled
  net/cpfl: fix build with shadow warnings enabled
  net/ixgbe: fix build with shadow warnings enabled
  app/test-pmd: fix build with shadow warnings enabled

 app/test-pmd/cmdline_flow.c                   | 42 ++++-----
 app/test-pmd/config.c                         | 15 ++--
 app/test-pmd/parameters.c                     |  4 +-
 app/test-pmd/testpmd.c                        |  2 +-
 drivers/bus/pci/linux/pci.c                   |  1 -
 drivers/bus/pci/linux/pci_vfio.c              |  2 +-
 drivers/net/intel/common/rx.h                 |  6 +-
 drivers/net/intel/cpfl/cpfl_flow_engine_fxp.c |  2 -
 drivers/net/intel/cpfl/cpfl_flow_parser.c     |  6 +-
 drivers/net/intel/cpfl/cpfl_fxp_rule.h        |  2 -
 drivers/net/intel/cpfl/cpfl_representor.h     |  2 +-
 drivers/net/intel/e1000/igc_ethdev.c          |  6 +-
 drivers/net/intel/i40e/i40e_ethdev.h          | 10 +--
 drivers/net/intel/ice/ice_ethdev.c            |  6 +-
 drivers/net/intel/ixgbe/ixgbe_fdir.c          |  7 +-
 lib/bbdev/rte_bbdev.c                         |  2 +-
 lib/eal/common/eal_common_options.c           | 12 +--
 lib/eal/common/eal_common_trace.c             | 89 +++++++++----------
 lib/eal/common/malloc_heap.c                  |  2 +-
 lib/ethdev/ethdev_driver.c                    |  6 +-
 lib/ethdev/rte_ethdev.c                       |  1 -
 lib/eventdev/rte_event_eth_rx_adapter.c       |  5 +-
 lib/eventdev/rte_event_eth_tx_adapter.c       |  8 +-
 lib/graph/graph.c                             |  4 +-
 lib/graph/graph_private.h                     |  2 +-
 lib/net/net_crc_avx512.c                      |  4 +-
 lib/pcapng/rte_pcapng.c                       |  7 +-
 lib/pipeline/rte_swx_ctl.c                    | 11 ++-
 lib/pipeline/rte_swx_pipeline.c               | 21 +++--
 lib/pipeline/rte_swx_pipeline_internal.h      | 10 +--
 lib/power/rte_power_pmd_mgmt.c                |  6 +-
 lib/table/rte_lru.h                           | 38 ++++----
 lib/table/rte_lru_arm64.h                     | 14 +--
 lib/table/rte_lru_x86.h                       |  4 +-
 lib/table/rte_swx_table_em.c                  |  2 -
 lib/table/rte_swx_table_learner.c             |  4 +-
 lib/table/rte_table_hash_key16.c              |  4 +-
 lib/table/rte_table_hash_key32.c              |  4 +-
 lib/table/rte_table_hash_key8.c               |  4 +-
 lib/telemetry/rte_telemetry.h                 | 11 ---
 lib/telemetry/telemetry.c                     |  2 +-
 lib/telemetry/telemetry_internal.h            | 11 +++
 42 files changed, 186 insertions(+), 215 deletions(-)

--
2.48.1


             reply	other threads:[~2025-11-06 14:09 UTC|newest]

Thread overview: 23+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-11-06 14:09 Bruce Richardson [this message]
2025-11-06 14:09 ` [RFC PATCH 01/19] eal: fix variable shadowing Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 02/19] ethdev: fix variable shadowing issues Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 03/19] eventdev: " Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 04/19] net: remove shadowed variable Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 05/19] graph: fix variable shadowing errors Bruce Richardson
2025-11-06 15:50   ` Stephen Hemminger
2025-11-06 16:33     ` Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 06/19] pipeline: fix variable shadowing Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 07/19] table: fix issues with " Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 08/19] power: rename variable to eliminate shadowing Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 09/19] pcapng: rename variable to fix shadowing Bruce Richardson
2025-11-06 15:51   ` Stephen Hemminger
2025-11-06 14:09 ` [RFC PATCH 10/19] telemetry: make socket handler typedef private Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 11/19] bbdev: fix variable shadowing Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 12/19] bus/pci: remove shadowed variables Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 13/19] net/intel: rename function param to avoid shadow warnings Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 14/19] net/e1000: fix build with shadow warnings enabled Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 15/19] net/i40e: " Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 16/19] net/ice: " Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 17/19] net/cpfl: " Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 18/19] net/ixgbe: " Bruce Richardson
2025-11-06 14:09 ` [RFC PATCH 19/19] app/test-pmd: " Bruce Richardson

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20251106140948.2894678-1-bruce.richardson@intel.com \
    --to=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).