Hi! This small series adds a feature which extends BPF offload beyond a pure host processing offload and firmly into the realm of heterogeneous processing. Allowing offloaded XDP programs to set the RX queue index opens the door for defining fully programmable RSS/n-tuple filter replacement. In fact the device datapath will skip the RSS processing completely if BPF decided on the queue already, making the XDP program replace part of the standard NIC datapath.
We hope some day the entire NIC datapath will be defined by BPF :) Jakub Kicinski (2): bpf: xdp: allow offloads to store into rx_queue_index nfp: bpf: support setting the RX queue index drivers/net/ethernet/netronome/nfp/bpf/fw.h | 1 + drivers/net/ethernet/netronome/nfp/bpf/jit.c | 47 +++++++++++++++++++ drivers/net/ethernet/netronome/nfp/bpf/main.c | 11 +++++ drivers/net/ethernet/netronome/nfp/bpf/main.h | 8 ++++ .../net/ethernet/netronome/nfp/bpf/verifier.c | 28 ++++++++++- drivers/net/ethernet/netronome/nfp/nfp_asm.h | 22 +++++---- include/linux/bpf.h | 2 +- kernel/bpf/verifier.c | 2 +- net/core/filter.c | 9 +++- 9 files changed, 115 insertions(+), 15 deletions(-) -- 2.17.0