From: Stanislav Fomichev <sdf@google.com>
Date: Fri, 13 Dec 2019 14:30:28 -0800
Subject: selftests/bpf: Test wire_len/gso_segs in BPF_PROG_TEST_RUN
Patch-mainline: v5.6-rc1
Git-commit: a06bf42f5a95ff462401d59d0c08cf4620213647
References: bsc#1177028
Make sure we can pass arbitrary data in wire_len/gso_segs.
Signed-off-by: Stanislav Fomichev <sdf@google.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Link: https://lore.kernel.org/bpf/20191213223028.161282-2-sdf@google.com
Acked-by: Gary Lin <glin@suse.com>
---
tools/testing/selftests/bpf/prog_tests/skb_ctx.c | 2 ++
tools/testing/selftests/bpf/progs/test_skb_ctx.c | 5 +++++
2 files changed, 7 insertions(+)
--- a/tools/testing/selftests/bpf/prog_tests/skb_ctx.c
+++ b/tools/testing/selftests/bpf/prog_tests/skb_ctx.c
@@ -11,6 +11,8 @@ void test_skb_ctx(void)
.cb[4] = 5,
.priority = 6,
.tstamp = 7,
+ .wire_len = 100,
+ .gso_segs = 8,
};
struct bpf_prog_test_run_attr tattr = {
.data_in = &pkt_v4,
--- a/tools/testing/selftests/bpf/progs/test_skb_ctx.c
+++ b/tools/testing/selftests/bpf/progs/test_skb_ctx.c
@@ -18,5 +18,10 @@ int process(struct __sk_buff *skb)
skb->priority++;
skb->tstamp++;
+ if (skb->wire_len != 100)
+ return 1;
+ if (skb->gso_segs != 8)
+ return 1;
+
return 0;
}