[PATCH] selftests/bpf: Fail unbound UDP on sockmap update
Ricardo B. Marlière (SUSE) <[email protected]>
| Newsgroups | org.kernel.vger.linux-kernel,org.kernel.vger.linux-kselftest,org.kernel.vger.stable |
|---|---|
| Message-ID | <[email protected]> |
From: Michal Luczaj <[email protected]> [ Upstream commit 203b06932777b9ad5085319389dea566f5c2ca63 ] sockmap now rejects unbound UDP sockets. Adjust test_maps. While at it, check socket()'s return value. This effectively reverts commit c39aa2159974 ("bpf, selftests: Fix test_maps now that sockmap supports UDP"). Signed-off-by: Michal Luczaj <[email protected]> Reviewed-by: Kuniyuki Iwashima <[email protected]> Reviewed-by: Jakub Sitnicki <[email protected]> Link: https://lore.kernel.org/bpf/[email protected] Signed-off-by: Kumar Kartikeya Dwivedi <[email protected]> --- Signed-off-by: Ricardo B. Marlière (SUSE) <[email protected]> --- Hi, backporting commit 66efd3368ae1 ("bpf, sockmap: Reject unhashed UDP sockets on sockmap update") without this one broke the selftest in openSUSE CI: https://openqa.opensuse.org/tests/6147940/logfile?filename=test_maps.tap.txt --- tools/testing/selftests/bpf/test_maps.c | 13 ++++++------- 1 file changed, 6 insertions(+), 7 deletions(-) diff --git a/tools/testing/selftests/bpf/test_maps.c b/tools/testing/selftests/bpf/test_maps.c index ccc5acd55ff9..d194b44ff8be 100644 --- a/tools/testing/selftests/bpf/test_maps.c +++ b/tools/testing/selftests/bpf/test_maps.c @@ -748,16 +748,15 @@ static void test_sockmap(unsigned int tasks, void *data) goto out_sockmap; } - /* Test update with unsupported UDP socket */ + /* Test update with unsupported unbound UDP socket */ udp = socket(AF_INET, SOCK_DGRAM, 0); - i = 0; - err = bpf_map_update_elem(fd, &i, &udp, BPF_ANY); - if (err) { - printf("Failed socket update SOCK_DGRAM '%i:%i'\n", - i, udp); + CHECK(udp < 0, "socket(AF_INET, SOCK_DGRAM)", "errno:%d\n", errno); + err = bpf_map_update_elem(fd, &(int){0}, &udp, BPF_ANY); + close(udp); + if (!err) { + printf("Unexpectedly succeeded unbound UDP update '0:%i'\n", udp); goto out_sockmap; } - close(udp); /* Test update without programs */ for (i = 0; i < 6; i++) { --- base-commit: 74b69060ba6e44e20c2e4dc1847eca21db6e4a7c change-id: 20260807-selftests-bpf-sockmap-781db29c4f94 Best regards, -- Ricardo B. Marlière (SUSE) <[email protected]>