[RFC 0/2] net/tap RSS BPF rewrite

Stephen Hemminger stephen at networkplumber.org
Tue Jan 30 04:46:50 CET 2024


This is a early (alpha) view of my recent work to
to update (gut job) of the RSS handling in the
tap device. The rework was so big that it did not
make sense to do it in incremental stages.

Overall it comes out much simpler and cleaner.
Much more testing is needed, at this point it will
load the program and try and setup filter (but fails).

Stephen Hemminger (2):
  tap: stop "vendoring" linux bpf headers
  tap: rework BPF handling

 .gitignore                            |     3 -
 drivers/net/tap/bpf/.gitignore        |     2 +
 drivers/net/tap/bpf/Makefile          |    21 +-
 drivers/net/tap/bpf/README            |    12 +
 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/tap_bpf_program.c |   255 -
 drivers/net/tap/bpf/tap_rss.c         |   269 +
 drivers/net/tap/meson.build           |    26 +-
 drivers/net/tap/rte_eth_tap.c         |     2 +
 drivers/net/tap/rte_eth_tap.h         |     9 +-
 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            |   530 +-
 drivers/net/tap/tap_flow.h            |    11 +-
 drivers/net/tap/tap_rss.h             |    14 +-
 drivers/net/tap/tap_rss.skel.h        | 11625 ++++++++++++++++++++++++
 drivers/net/tap/tap_rss.stub.h        |    45 +
 20 files changed, 12137 insertions(+), 3156 deletions(-)
 create mode 100644 drivers/net/tap/bpf/.gitignore
 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
 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
 create mode 100644 drivers/net/tap/tap_rss.skel.h
 create mode 100644 drivers/net/tap/tap_rss.stub.h

-- 
2.43.0



More information about the dev mailing list