[PATCH v10 0/9] net/tap: fix RSS (BPF) flow support
Stephen Hemminger
stephen at networkplumber.org
Wed May 1 18:11:59 CEST 2024
The support of doing RSS for rte_flow_action was a cool idea
but it has been broken for several releases of DPDK as the
kernel and BPF infrastructure changed.
This series cleans up the BPF program, implements several
features that were never completed in the original code
and changes to use the current BPF toolchain.
The result should be easier to read and maintain. I do not
intend to support backporting this to stable releases due
to lack of demand and dealing with older distros.
v10 - add some cleanups to stats and name sizes
- update documentation from review
Stephen Hemminger (9):
net/tap: do not duplicate fd's
net/tap: remove unused fields
net/tap: validate and setup parameters for BPF RSS
net/tap: do not build flow support if header is out of date
net/tap: rewrite the RSS BPF program
net/tap: use libbpf to load new BPF program
net/tap: remove no longer used files
net/tap: simplify internals
net/tap: update documentation
.gitignore | 3 -
doc/guides/nics/tap.rst | 274 ++--
doc/guides/rel_notes/release_24_07.rst | 7 +
drivers/net/tap/bpf/Makefile | 19 -
drivers/net/tap/bpf/README | 49 +
drivers/net/tap/bpf/bpf_api.h | 276 ----
drivers/net/tap/bpf/bpf_elf.h | 53 -
drivers/net/tap/bpf/bpf_extract.py | 86 --
drivers/net/tap/bpf/meson.build | 107 ++
drivers/net/tap/bpf/tap_bpf_program.c | 255 ----
drivers/net/tap/bpf/tap_rss.c | 267 ++++
drivers/net/tap/meson.build | 42 +-
drivers/net/tap/rte_eth_tap.c | 339 ++---
drivers/net/tap/rte_eth_tap.h | 32 +-
drivers/net/tap/tap_bpf.h | 121 --
drivers/net/tap/tap_bpf_api.c | 190 ---
drivers/net/tap/tap_bpf_insns.h | 1743 ------------------------
drivers/net/tap/tap_flow.c | 559 ++------
drivers/net/tap/tap_flow.h | 17 +-
drivers/net/tap/tap_intr.c | 7 +-
drivers/net/tap/tap_rss.h | 21 +-
drivers/net/tap/tap_tcmsgs.h | 4 +-
22 files changed, 887 insertions(+), 3584 deletions(-)
delete mode 100644 drivers/net/tap/bpf/Makefile
create mode 100644 drivers/net/tap/bpf/README
delete mode 100644 drivers/net/tap/bpf/bpf_api.h
delete mode 100644 drivers/net/tap/bpf/bpf_elf.h
delete mode 100644 drivers/net/tap/bpf/bpf_extract.py
create mode 100644 drivers/net/tap/bpf/meson.build
delete mode 100644 drivers/net/tap/bpf/tap_bpf_program.c
create mode 100644 drivers/net/tap/bpf/tap_rss.c
delete mode 100644 drivers/net/tap/tap_bpf.h
delete mode 100644 drivers/net/tap/tap_bpf_api.c
delete mode 100644 drivers/net/tap/tap_bpf_insns.h
--
2.43.0
More information about the dev
mailing list