Jakub says: Hi!
This series starts with a fix to Jesper's recent work, somehow I forgot about control rings during review. Second patch is cleaning up a vNIC header, in kdoc we should not use @ for #define constants. Aligning of the top of the stack as well as bottom (last bytes will be unused) helps the performance. We should check offload datapath's max MTU when program is loaded and we can allow TC hw offload flag to be changed freely while XDP offload is active. Next group of patches adds more fully featured relocation support. Due to limited amount of code space we only load the image to NIC's memory when program is attached. Since we can't predict which programs are loaded later, we should translate as if image was to be loaded at offset zero and only apply relocations at load time. Many more advanced features (eg. tail class, subprograms, dynamic allocation of program space and sharing it between ports) will depend on this. Nic adds support for signed comparison instructions. Quentin makes use of the verifier log in our driver, the verifier print function (verbose()) has to be renamed and exported. v2: - replace #define by function aliasing for verbose() in patch 13 Jakub Kicinski (11): nfp: don't try to register XDP rxq structures on control queues nfp: fix incumbent kdoc warnings nfp: bpf: round up the size of the stack nfp: bpf: don't allow changing MTU above BPF offload limit when active nfp: bpf: allow disabling TC offloads when XDP active nfp: bpf: move jump resolution to jit.c nfp: bpf: add helpers for modifying branch addresses nfp: bpf: relocate jump targets just before the load nfp: bpf: don't depend on high order allocations for program image nfp: bpf: use a large constant in unresolved branches nfp: hand over to BPF offload app at coarser granularity Nic Viljoen (1): nfp: bpf: add signed jump insns Quentin Monnet (2): bpf: export function to write into verifier log buffer nfp: bpf: reuse verifier log for debug messages drivers/net/ethernet/netronome/nfp/bpf/jit.c | 248 ++++++++++++++------- drivers/net/ethernet/netronome/nfp/bpf/main.c | 38 +++- drivers/net/ethernet/netronome/nfp/bpf/main.h | 44 ++-- drivers/net/ethernet/netronome/nfp/bpf/offload.c | 65 +++--- drivers/net/ethernet/netronome/nfp/bpf/verifier.c | 30 +-- drivers/net/ethernet/netronome/nfp/nfp_app.h | 60 ++--- drivers/net/ethernet/netronome/nfp/nfp_asm.c | 30 +++ drivers/net/ethernet/netronome/nfp/nfp_asm.h | 5 + .../net/ethernet/netronome/nfp/nfp_net_common.c | 27 +-- drivers/net/ethernet/netronome/nfp/nfp_net_ctrl.h | 111 ++++----- drivers/net/ethernet/netronome/nfp/nfp_net_repr.c | 8 + drivers/net/ethernet/netronome/nfp/nfp_net_repr.h | 1 + include/linux/bpf_verifier.h | 3 + kernel/bpf/verifier.c | 16 +- 14 files changed, 428 insertions(+), 258 deletions(-) -- 2.7.4