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]>


Reply via email to