selftests/bpf: Add u32()/u64() to sockmap_helpers
authorMichal Luczaj <mhal@rbox.co>
Wed, 14 May 2025 22:15:26 +0000 (00:15 +0200)
committerMartin KaFai Lau <martin.lau@kernel.org>
Thu, 22 May 2025 21:26:58 +0000 (14:26 -0700)
Add integer wrappers for convenient sockmap usage.

While there, fix misaligned trailing slashes.

Suggested-by: Jakub Sitnicki <jakub@cloudflare.com>
Signed-off-by: Michal Luczaj <mhal@rbox.co>
Signed-off-by: Martin KaFai Lau <martin.lau@kernel.org>
Reviewed-by: Jakub Sitnicki <jakub@cloudflare.com>
Acked-by: John Fastabend <john.fastabend@gmail.com>
Link: https://lore.kernel.org/r/20250515-selftests-sockmap-redir-v3-3-a1ea723f7e7e@rbox.co
tools/testing/selftests/bpf/prog_tests/sockmap_helpers.h

index 3e5571dd578d12a6f8195bf3d25e069a1e477416..d815efac52fda9592274bb8606c8698fa4baf9c6 100644 (file)
@@ -5,12 +5,15 @@
 
 #define MAX_TEST_NAME 80
 
+#define u32(v) ((u32){(v)})
+#define u64(v) ((u64){(v)})
+
 #define __always_unused        __attribute__((__unused__))
 
 #define xbpf_map_delete_elem(fd, key)                                          \
        ({                                                                     \
                int __ret = bpf_map_delete_elem((fd), (key));                  \
-               if (__ret < 0)                                               \
+               if (__ret < 0)                                                 \
                        FAIL_ERRNO("map_delete");                              \
                __ret;                                                         \
        })
@@ -18,7 +21,7 @@
 #define xbpf_map_lookup_elem(fd, key, val)                                     \
        ({                                                                     \
                int __ret = bpf_map_lookup_elem((fd), (key), (val));           \
-               if (__ret < 0)                                               \
+               if (__ret < 0)                                                 \
                        FAIL_ERRNO("map_lookup");                              \
                __ret;                                                         \
        })
@@ -26,7 +29,7 @@
 #define xbpf_map_update_elem(fd, key, val, flags)                              \
        ({                                                                     \
                int __ret = bpf_map_update_elem((fd), (key), (val), (flags));  \
-               if (__ret < 0)                                               \
+               if (__ret < 0)                                                 \
                        FAIL_ERRNO("map_update");                              \
                __ret;                                                         \
        })
@@ -35,7 +38,7 @@
        ({                                                                     \
                int __ret =                                                    \
                        bpf_prog_attach((prog), (target), (type), (flags));    \
-               if (__ret < 0)                                               \
+               if (__ret < 0)                                                 \
                        FAIL_ERRNO("prog_attach(" #type ")");                  \
                __ret;                                                         \
        })
@@ -43,7 +46,7 @@
 #define xbpf_prog_detach2(prog, target, type)                                  \
        ({                                                                     \
                int __ret = bpf_prog_detach2((prog), (target), (type));        \
-               if (__ret < 0)                                               \
+               if (__ret < 0)                                                 \
                        FAIL_ERRNO("prog_detach2(" #type ")");                 \
                __ret;                                                         \
        })
                __ret;                                                         \
        })
 
-static inline int add_to_sockmap(int sock_mapfd, int fd1, int fd2)
+static inline int add_to_sockmap(int mapfd, int fd1, int fd2)
 {
-       u64 value;
-       u32 key;
        int err;
 
-       key = 0;
-       value = fd1;
-       err = xbpf_map_update_elem(sock_mapfd, &key, &value, BPF_NOEXIST);
+       err = xbpf_map_update_elem(mapfd, &u32(0), &u64(fd1), BPF_NOEXIST);
        if (err)
                return err;
 
-       key = 1;
-       value = fd2;
-       return xbpf_map_update_elem(sock_mapfd, &key, &value, BPF_NOEXIST);
+       return xbpf_map_update_elem(mapfd, &u32(1), &u64(fd2), BPF_NOEXIST);
 }
 
 #endif // __SOCKMAP_HELPERS__