selftests/bpf: Skip lsm_cgroup when we don't have trampolines
authorStanislav Fomichev <sdf@google.com>
Thu, 30 Jun 2022 22:42:03 +0000 (15:42 -0700)
committerDaniel Borkmann <daniel@iogearbox.net>
Fri, 1 Jul 2022 13:13:36 +0000 (15:13 +0200)
With arch_prepare_bpf_trampoline removed on x86:

  [...]
  #98/1    lsm_cgroup/functional:SKIP
  #98      lsm_cgroup:SKIP
  Summary: 1/0 PASSED, 1 SKIPPED, 0 FAILED

Fixes: dca85aac8895 ("selftests/bpf: lsm_cgroup functional test")
Signed-off-by: Stanislav Fomichev <sdf@google.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Hao Luo <haoluo@google.com>
Link: https://lore.kernel.org/bpf/20220630224203.512815-1-sdf@google.com
tools/testing/selftests/bpf/prog_tests/lsm_cgroup.c

index d40810a..c542d7e 100644 (file)
@@ -9,6 +9,10 @@
 #include "cgroup_helpers.h"
 #include "network_helpers.h"
 
+#ifndef ENOTSUPP
+#define ENOTSUPP 524
+#endif
+
 static struct btf *btf;
 
 static __u32 query_prog_cnt(int cgroup_fd, const char *attach_func)
@@ -100,6 +104,10 @@ static void test_lsm_cgroup_functional(void)
        ASSERT_EQ(query_prog_cnt(cgroup_fd, "bpf_lsm_sk_alloc_security"), 0, "prog count");
        ASSERT_EQ(query_prog_cnt(cgroup_fd, NULL), 0, "total prog count");
        err = bpf_prog_attach(alloc_prog_fd, cgroup_fd, BPF_LSM_CGROUP, 0);
+       if (err == -ENOTSUPP) {
+               test__skip();
+               goto close_cgroup;
+       }
        if (!ASSERT_OK(err, "attach alloc_prog_fd"))
                goto detach_cgroup;
        ASSERT_EQ(query_prog_cnt(cgroup_fd, "bpf_lsm_sk_alloc_security"), 1, "prog count");