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