selftests/bpf: fix a few clang compilation errors
authorYonghong Song <yhs@fb.com>
Wed, 11 May 2022 18:47:35 +0000 (11:47 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Wed, 11 May 2022 19:58:12 +0000 (12:58 -0700)
With latest clang, I got the following compilation errors:
  .../prog_tests/test_tunnel.c:291:6: error: variable 'local_ip_map_fd' is used uninitialized
     whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
       if (attach_tc_prog(&tc_hook, -1, set_dst_prog_fd))
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  .../bpf/prog_tests/test_tunnel.c:312:6: note: uninitialized use occurs here
        if (local_ip_map_fd >= 0)
            ^~~~~~~~~~~~~~~
  ...
  .../prog_tests/kprobe_multi_test.c:346:6: error: variable 'err' is used uninitialized
      whenever 'if' condition is true [-Werror,-Wsometimes-uninitialized]
        if (IS_ERR(map))
            ^~~~~~~~~~~
  .../prog_tests/kprobe_multi_test.c:388:6: note: uninitialized use occurs here
        if (err) {
            ^~~

This patch fixed the above compilation errors.

Signed-off-by: Yonghong Song <yhs@fb.com>
Acked-by: David Vernet <void@manifault.com>
Link: https://lore.kernel.org/r/20220511184735.3670214-1-yhs@fb.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
tools/testing/selftests/bpf/prog_tests/kprobe_multi_test.c
tools/testing/selftests/bpf/prog_tests/test_tunnel.c

index 816eace..586dc52 100644 (file)
@@ -343,8 +343,10 @@ static int get_syms(char ***symsp, size_t *cntp)
                return -EINVAL;
 
        map = hashmap__new(symbol_hash, symbol_equal, NULL);
-       if (IS_ERR(map))
+       if (IS_ERR(map)) {
+               err = libbpf_get_error(map);
                goto error;
+       }
 
        while (fgets(buf, sizeof(buf), f)) {
                /* skip modules */
index 071c9c9..3bba4a2 100644 (file)
@@ -246,7 +246,7 @@ static void test_vxlan_tunnel(void)
 {
        struct test_tunnel_kern *skel = NULL;
        struct nstoken *nstoken;
-       int local_ip_map_fd;
+       int local_ip_map_fd = -1;
        int set_src_prog_fd, get_src_prog_fd;
        int set_dst_prog_fd;
        int key = 0, ifindex = -1;
@@ -319,7 +319,7 @@ static void test_ip6vxlan_tunnel(void)
 {
        struct test_tunnel_kern *skel = NULL;
        struct nstoken *nstoken;
-       int local_ip_map_fd;
+       int local_ip_map_fd = -1;
        int set_src_prog_fd, get_src_prog_fd;
        int set_dst_prog_fd;
        int key = 0, ifindex = -1;