From: Stephen Hemminger <stephen@networkplumber.org>
To: dev@dpdk.org
Cc: Stephen Hemminger <stephen@networkplumber.org>
Subject: [RFC 0/8] retire legacy flow director API
Date: Thu, 28 May 2026 14:37:12 -0700 [thread overview]
Message-ID: <20260528213816.562910-1-stephen@networkplumber.org> (raw)
The flow director (fdir) configuration API in <rte_eth_ctrl.h> was
superseded by rte_flow in 17.05 but never removed. This series
finishes the job: 26.07 retires the user-facing surface and
decouples driver internals from the public ABI; the 26.11
deprecation notice covers the public ABI removal itself.
User-visible changes in 26.07:
- testpmd commands gone: `show port fdir`, `clear port fdir`,
`flow_director_filter`, `port config ... pctype mapping ...`,
and `port config ... hash_inset|fdir_inset|fdir_flx_inset ...`.
Use the `flow` command instead.
- Experimental functions gone:
rte_pmd_{i40e,ixgbe}_get_fdir_info() and
rte_pmd_{i40e,ixgbe}_get_fdir_stats(). Removed early to give
out-of-tree callers a build-time signal ahead of 26.11.
- <rte_pmd_i40e.h> filter configuration entry points are marked
__rte_deprecated. -Werror sources will need
-Wno-deprecated-declarations, or migration to rte_flow, before
26.11.
Scheduled for 26.11 (announced in deprecation.rst):
- Flow director types in <rte_eth_ctrl.h> and the driver-facing
definitions in <ethdev_driver.h>.
- PMD-private filter API in <rte_pmd_i40e.h>.
The ixgbe and txgbe patches at the tail privatize internals that
still used the legacy types — mechanical rename, no behavior
change, so the 26.11 struct removal can proceed without further
per-driver coupling.
The mbuf-side fdir metadata (RTE_MBUF_F_RX_FDIR* flags and the
hash.fdir field) is unaffected — it is used by the rte_flow MARK
and FLAG actions, not part of the legacy filter API.
Stephen Hemminger (8):
app/testpmd: remove support for flow director
net/i40e: remove testpmd flow filter commands
net/i40e: deprecate legacy flow filter API
net/i40e: remove experimental FDIR API
net/ixgbe: remove experimental FDIR API
doc: announce legacy flow director deprecation
net/ixgbe: privatize legacy flow director types
net/txgbe: privatize legacy flow director types
app/test-pmd/cmdline.c | 21 +-
app/test-pmd/config.c | 163 -----
app/test-pmd/testpmd.h | 3 -
doc/guides/nics/i40e.rst | 70 +-
doc/guides/rel_notes/deprecation.rst | 10 +
doc/guides/rel_notes/release_26_07.rst | 14 +
doc/guides/testpmd_app_ug/testpmd_funcs.rst | 36 -
drivers/net/intel/i40e/i40e_ethdev.c | 4 +-
drivers/net/intel/i40e/i40e_ethdev.h | 4 -
drivers/net/intel/i40e/i40e_fdir.c | 140 ----
drivers/net/intel/i40e/i40e_flow.c | 3 +-
drivers/net/intel/i40e/i40e_testpmd.c | 642 ------------------
drivers/net/intel/i40e/rte_pmd_i40e.c | 34 -
drivers/net/intel/i40e/rte_pmd_i40e.h | 113 ++-
drivers/net/intel/ixgbe/ixgbe_ethdev.c | 12 +-
drivers/net/intel/ixgbe/ixgbe_ethdev.h | 100 ++-
drivers/net/intel/ixgbe/ixgbe_fdir.c | 241 ++-----
drivers/net/intel/ixgbe/ixgbe_flow.c | 28 +-
.../net/intel/ixgbe/ixgbe_rxtx_vec_common.c | 4 +-
drivers/net/intel/ixgbe/rte_pmd_ixgbe.c | 34 -
drivers/net/intel/ixgbe/rte_pmd_ixgbe.h | 32 -
drivers/net/txgbe/txgbe_ethdev.c | 6 +-
drivers/net/txgbe/txgbe_ethdev.h | 101 ++-
drivers/net/txgbe/txgbe_fdir.c | 78 +--
drivers/net/txgbe/txgbe_flow.c | 24 +-
drivers/net/txgbe/txgbe_rxtx_vec_common.h | 4 +-
26 files changed, 448 insertions(+), 1473 deletions(-)
--
2.53.0
next reply other threads:[~2026-05-28 21:38 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-05-28 21:37 Stephen Hemminger [this message]
2026-05-28 21:37 ` [RFC 1/8] app/testpmd: remove support for flow director Stephen Hemminger
2026-05-28 21:37 ` [RFC 2/8] net/i40e: remove testpmd flow filter commands Stephen Hemminger
2026-05-28 21:37 ` [RFC 3/8] net/i40e: deprecate legacy flow filter API Stephen Hemminger
2026-05-28 21:37 ` [RFC 4/8] net/i40e: remove experimental FDIR API Stephen Hemminger
2026-05-28 21:37 ` [RFC 5/8] net/ixgbe: " Stephen Hemminger
2026-05-28 21:37 ` [RFC 6/8] doc: announce legacy flow director deprecation Stephen Hemminger
2026-05-28 21:37 ` [RFC 7/8] net/ixgbe: privatize legacy flow director types Stephen Hemminger
2026-05-28 21:37 ` [RFC 8/8] net/txgbe: " Stephen Hemminger
2026-05-29 7:29 ` Jiawen Wu
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=20260528213816.562910-1-stephen@networkplumber.org \
--to=stephen@networkplumber.org \
--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