selftests/bpf: Mount debugfs in setns_by_fd
authorStanislav Fomichev <sdf@google.com>
Wed, 23 Nov 2022 20:08:29 +0000 (12:08 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:15 +0000 (13:32 +0100)
[ Upstream commit 8ac88eece8009428e2577c345080a458e4507e2f ]

Jiri reports broken test_progs after recent commit 68f8e3d4b916
("selftests/bpf: Make sure zero-len skbs aren't redirectable").
Apparently we don't remount debugfs when we switch back networking namespace.
Let's explicitly mount /sys/kernel/debug.

0: https://lore.kernel.org/bpf/63b85917-a2ea-8e35-620c-808560910819@meta.com/T/#ma66ca9c92e99eee0a25e40f422489b26ee0171c1

Fixes: a30338840fa5 ("selftests/bpf: Move open_netns() and close_netns() into network_helpers.c")
Reported-by: Jiri Olsa <olsajiri@gmail.com>
Signed-off-by: Stanislav Fomichev <sdf@google.com>
Link: https://lore.kernel.org/r/20221123200829.2226254-1-sdf@google.com
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
tools/testing/selftests/bpf/network_helpers.c
tools/testing/selftests/bpf/prog_tests/empty_skb.c
tools/testing/selftests/bpf/prog_tests/xdp_do_redirect.c
tools/testing/selftests/bpf/prog_tests/xdp_synproxy.c

index bec1555..1f37adf 100644 (file)
@@ -426,6 +426,10 @@ static int setns_by_fd(int nsfd)
        if (!ASSERT_OK(err, "mount /sys/fs/bpf"))
                return err;
 
+       err = mount("debugfs", "/sys/kernel/debug", "debugfs", 0, NULL);
+       if (!ASSERT_OK(err, "mount /sys/kernel/debug"))
+               return err;
+
        return 0;
 }
 
index 32dd731..0613f3b 100644 (file)
@@ -9,7 +9,7 @@
                goto out; \
 })
 
-void test_empty_skb(void)
+void serial_test_empty_skb(void)
 {
        LIBBPF_OPTS(bpf_test_run_opts, tattr);
        struct empty_skb *bpf_obj = NULL;
index a50971c..9ac6f6a 100644 (file)
@@ -85,7 +85,7 @@ static void test_max_pkt_size(int fd)
 }
 
 #define NUM_PKTS 10000
-void test_xdp_do_redirect(void)
+void serial_test_xdp_do_redirect(void)
 {
        int err, xdp_prog_fd, tc_prog_fd, ifindex_src, ifindex_dst;
        char data[sizeof(pkt_udp) + sizeof(__u32)];
index 75550a4..879f5da 100644 (file)
@@ -174,7 +174,7 @@ out:
        system("ip netns del synproxy");
 }
 
-void test_xdp_synproxy(void)
+void serial_test_xdp_synproxy(void)
 {
        if (test__start_subtest("xdp"))
                test_synproxy(true);