diff options
author | Jakub Sitnicki <jakub@cloudflare.com> | 2022-03-17 14:39:17 +0300 |
---|---|---|
committer | Daniel Borkmann <daniel@iogearbox.net> | 2022-03-18 17:46:58 +0300 |
commit | a4c9fe0ed4a13e25e43fcd44d9f89bc19ba8fbb7 (patch) | |
tree | 60883aef0a2edaef2520082e5b6506883afe5e49 /tools/testing/selftests/bpf/progs/test_sock_fields.c | |
parent | 60911970b0163f28495d4d3d669d8f5803df8cf1 (diff) | |
download | linux-a4c9fe0ed4a13e25e43fcd44d9f89bc19ba8fbb7.tar.xz |
selftests/bpf: Fix error reporting from sock_fields programs
The helper macro that records an error in BPF programs that exercise sock
fields access has been inadvertently broken by adaptation work that
happened in commit b18c1f0aa477 ("bpf: selftest: Adapt sock_fields test to
use skel and global variables").
BPF_NOEXIST flag cannot be used to update BPF_MAP_TYPE_ARRAY. The operation
always fails with -EEXIST, which in turn means the error never gets
recorded, and the checks for errors always pass.
Revert the change in update flags.
Fixes: b18c1f0aa477 ("bpf: selftest: Adapt sock_fields test to use skel and global variables")
Signed-off-by: Jakub Sitnicki <jakub@cloudflare.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Martin KaFai Lau <kafai@fb.com>
Link: https://lore.kernel.org/bpf/20220317113920.1068535-2-jakub@cloudflare.com
Diffstat (limited to 'tools/testing/selftests/bpf/progs/test_sock_fields.c')
-rw-r--r-- | tools/testing/selftests/bpf/progs/test_sock_fields.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/testing/selftests/bpf/progs/test_sock_fields.c b/tools/testing/selftests/bpf/progs/test_sock_fields.c index 246f1f001813..3e2e3ee51cc9 100644 --- a/tools/testing/selftests/bpf/progs/test_sock_fields.c +++ b/tools/testing/selftests/bpf/progs/test_sock_fields.c @@ -114,7 +114,7 @@ static void tpcpy(struct bpf_tcp_sock *dst, #define RET_LOG() ({ \ linum = __LINE__; \ - bpf_map_update_elem(&linum_map, &linum_idx, &linum, BPF_NOEXIST); \ + bpf_map_update_elem(&linum_map, &linum_idx, &linum, BPF_ANY); \ return CG_OK; \ }) |