[PATCH v3 0/4] net/gve: add flow steering support
Jasper Tran O'Leary
jtranoleary at google.com
Wed Mar 4 02:46:20 CET 2026
This patch series adds flow steering support to the Google Virtual
Ethernet (gve) driver. This functionality allows traffic to be directed
to specific receive queues based on user-specified flow patterns.
The series includes foundational support for extended admin queue
commands needed to handle flow rules, the specific adminqueue commands
for flow rule management, and the integration with the DPDK rte_flow
API. The series adds support flow matching on the following protocols:
IPv4, IPv6, TCP, UDP, SCTP, ESP, and AH.
Patch Overview:
1. "net/gve: add flow steering device option" checks for and enables
the flow steering capability in the device options during
initialization.
2. "net/gve: introduce extended adminq command" adds infrastructure
for sending extended admin queue commands. These commands use a
flexible buffer descriptor format required for flow rule management.
3. "net/gve: add adminq commands for flow steering" implements the
specific admin queue commands to add and remove flow rules on the
device, including handling of rule IDs and parameters.
4. "net/gve: add rte flow API integration" exposes the flow steering
functionality via the DPDK rte_flow API. This includes strict
pattern validation, rule parsing, and lifecycle management (create,
destroy, flush). It ensures thread-safe access to the flow subsystem
and proper resource cleanup during device reset.
Jasper Tran O'Leary (2):
net/gve: add adminq commands for flow steering
net/gve: add rte flow API integration
Vee Agarwal (2):
net/gve: add flow steering device option
net/gve: introduce extended adminq command
doc/guides/nics/features/gve.ini | 12 +
doc/guides/nics/gve.rst | 27 +
doc/guides/rel_notes/release_26_03.rst | 1 +
drivers/net/gve/base/gve.h | 3 +-
drivers/net/gve/base/gve_adminq.c | 118 ++++-
drivers/net/gve/base/gve_adminq.h | 57 +++
drivers/net/gve/gve_ethdev.c | 83 +++-
drivers/net/gve/gve_ethdev.h | 46 ++
drivers/net/gve/gve_flow_rule.c | 658 +++++++++++++++++++++++++
drivers/net/gve/gve_flow_rule.h | 65 +++
drivers/net/gve/meson.build | 1 +
11 files changed, 1066 insertions(+), 5 deletions(-)
create mode 100644 dpdk/drivers/net/gve/gve_flow_rule.c
create mode 100644 dpdk/drivers/net/gve/gve_flow_rule.h
--
2.53.0.473.g4a7958ca14-goog
More information about the dev
mailing list