This allows a sockmap sk_skb verdict programs to run without a parser. For some use cases, such as verdict program that support streaming data or a l3/l4 proxy that does not use data in packet, loading the nop parser 'return skb->len' is an extra unnecessary complexity. With this series we simply call the verdict program directly from data_ready instead of bouncing through the strparser logic. Patches 1,2 do the lifting on the sockmap side then patches 3,4 add the selftests. This applies on top of the series here, sockmap/sk_skb program memory acct fixes https://patchwork.ozlabs.org/project/netdev/list/?series=206975 it will apply without the above series cleanly, but will have an incorrect memory accounting causing a failure in ./test_sockmap. I could have left it so the series passed without above series, but it seemed odd to have it out there and then require yet another patch to fix it up here. Thanks. --- John Fastabend (4): bpf, sockmap: check skb_verdict and skb_parser programs explicitly bpf, sockmap: Allow skipping sk_skb parser program bpf, selftests: Add option to test_sockmap to omit adding parser program bpf, selftests: Add three new sockmap tests for verdict only programs include/linux/skmsg.h | 2 + net/core/skmsg.c | 78 ++++++++++++++++++++++++++++ net/core/sock_map.c | 37 ++++++++----- tools/testing/selftests/bpf/test_sockmap.c | 54 ++++++++++++++----- 4 files changed, 142 insertions(+), 29 deletions(-) -- Signature