selftests/bpf: Normalize all the rest SEC() uses
authorAndrii Nakryiko <andrii@kernel.org>
Tue, 28 Sep 2021 16:19:40 +0000 (09:19 -0700)
committerAlexei Starovoitov <ast@kernel.org>
Tue, 28 Sep 2021 20:51:19 +0000 (13:51 -0700)
Normalize all the other non-conforming SEC() usages across all
selftests. This is in preparation for libbpf to start to enforce
stricter SEC() rules in libbpf 1.0 mode.

Signed-off-by: Andrii Nakryiko <andrii@kernel.org>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
Acked-by: Dave Marchevsky <davemarchevsky@fb.com>
Link: https://lore.kernel.org/bpf/20210928161946.2512801-5-andrii@kernel.org
12 files changed:
tools/testing/selftests/bpf/prog_tests/flow_dissector.c
tools/testing/selftests/bpf/prog_tests/sockopt_multi.c
tools/testing/selftests/bpf/progs/bpf_flow.c
tools/testing/selftests/bpf/progs/cg_storage_multi_isolated.c
tools/testing/selftests/bpf/progs/cg_storage_multi_shared.c
tools/testing/selftests/bpf/progs/sockopt_multi.c
tools/testing/selftests/bpf/progs/test_cgroup_link.c
tools/testing/selftests/bpf/progs/test_misc_tcp_hdr_options.c
tools/testing/selftests/bpf/progs/test_sk_lookup.c
tools/testing/selftests/bpf/progs/test_sockmap_listen.c
tools/testing/selftests/bpf/progs/test_sockmap_skb_verdict_attach.c
tools/testing/selftests/bpf/progs/test_tcp_hdr_options.c

index 225714f..ac54e3f 100644 (file)
@@ -458,9 +458,9 @@ static int init_prog_array(struct bpf_object *obj, struct bpf_map *prog_array)
                return -1;
 
        for (i = 0; i < bpf_map__def(prog_array)->max_entries; i++) {
-               snprintf(prog_name, sizeof(prog_name), "flow_dissector/%i", i);
+               snprintf(prog_name, sizeof(prog_name), "flow_dissector_%d", i);
 
-               prog = bpf_object__find_program_by_title(obj, prog_name);
+               prog = bpf_object__find_program_by_name(obj, prog_name);
                if (!prog)
                        return -1;
 
index 51fac97..bc34f77 100644 (file)
@@ -2,7 +2,7 @@
 #include <test_progs.h>
 #include "cgroup_helpers.h"
 
-static int prog_attach(struct bpf_object *obj, int cgroup_fd, const char *title)
+static int prog_attach(struct bpf_object *obj, int cgroup_fd, const char *title, const char *name)
 {
        enum bpf_attach_type attach_type;
        enum bpf_prog_type prog_type;
@@ -15,23 +15,23 @@ static int prog_attach(struct bpf_object *obj, int cgroup_fd, const char *title)
                return -1;
        }
 
-       prog = bpf_object__find_program_by_title(obj, title);
+       prog = bpf_object__find_program_by_name(obj, name);
        if (!prog) {
-               log_err("Failed to find %s BPF program", title);
+               log_err("Failed to find %s BPF program", name);
                return -1;
        }
 
        err = bpf_prog_attach(bpf_program__fd(prog), cgroup_fd,
                              attach_type, BPF_F_ALLOW_MULTI);
        if (err) {
-               log_err("Failed to attach %s BPF program", title);
+               log_err("Failed to attach %s BPF program", name);
                return -1;
        }
 
        return 0;
 }
 
-static int prog_detach(struct bpf_object *obj, int cgroup_fd, const char *title)
+static int prog_detach(struct bpf_object *obj, int cgroup_fd, const char *title, const char *name)
 {
        enum bpf_attach_type attach_type;
        enum bpf_prog_type prog_type;
@@ -42,7 +42,7 @@ static int prog_detach(struct bpf_object *obj, int cgroup_fd, const char *title)
        if (err)
                return -1;
 
-       prog = bpf_object__find_program_by_title(obj, title);
+       prog = bpf_object__find_program_by_name(obj, name);
        if (!prog)
                return -1;
 
@@ -89,7 +89,7 @@ static int run_getsockopt_test(struct bpf_object *obj, int cg_parent,
         * - child:  0x80 -> 0x90
         */
 
-       err = prog_attach(obj, cg_child, "cgroup/getsockopt/child");
+       err = prog_attach(obj, cg_child, "cgroup/getsockopt", "_getsockopt_child");
        if (err)
                goto detach;
 
@@ -113,7 +113,7 @@ static int run_getsockopt_test(struct bpf_object *obj, int cg_parent,
         * - parent: 0x90 -> 0xA0
         */
 
-       err = prog_attach(obj, cg_parent, "cgroup/getsockopt/parent");
+       err = prog_attach(obj, cg_parent, "cgroup/getsockopt", "_getsockopt_parent");
        if (err)
                goto detach;
 
@@ -157,7 +157,7 @@ static int run_getsockopt_test(struct bpf_object *obj, int cg_parent,
         * - parent: unexpected 0x40, EPERM
         */
 
-       err = prog_detach(obj, cg_child, "cgroup/getsockopt/child");
+       err = prog_detach(obj, cg_child, "cgroup/getsockopt", "_getsockopt_child");
        if (err) {
                log_err("Failed to detach child program");
                goto detach;
@@ -198,8 +198,8 @@ static int run_getsockopt_test(struct bpf_object *obj, int cg_parent,
        }
 
 detach:
-       prog_detach(obj, cg_child, "cgroup/getsockopt/child");
-       prog_detach(obj, cg_parent, "cgroup/getsockopt/parent");
+       prog_detach(obj, cg_child, "cgroup/getsockopt", "_getsockopt_child");
+       prog_detach(obj, cg_parent, "cgroup/getsockopt", "_getsockopt_parent");
 
        return err;
 }
@@ -236,7 +236,7 @@ static int run_setsockopt_test(struct bpf_object *obj, int cg_parent,
 
        /* Attach child program and make sure it adds 0x10. */
 
-       err = prog_attach(obj, cg_child, "cgroup/setsockopt");
+       err = prog_attach(obj, cg_child, "cgroup/setsockopt", "_setsockopt");
        if (err)
                goto detach;
 
@@ -263,7 +263,7 @@ static int run_setsockopt_test(struct bpf_object *obj, int cg_parent,
 
        /* Attach parent program and make sure it adds another 0x10. */
 
-       err = prog_attach(obj, cg_parent, "cgroup/setsockopt");
+       err = prog_attach(obj, cg_parent, "cgroup/setsockopt", "_setsockopt");
        if (err)
                goto detach;
 
@@ -289,8 +289,8 @@ static int run_setsockopt_test(struct bpf_object *obj, int cg_parent,
        }
 
 detach:
-       prog_detach(obj, cg_child, "cgroup/setsockopt");
-       prog_detach(obj, cg_parent, "cgroup/setsockopt");
+       prog_detach(obj, cg_child, "cgroup/setsockopt", "_setsockopt");
+       prog_detach(obj, cg_parent, "cgroup/setsockopt", "_setsockopt");
 
        return err;
 }
index 95a5a07..f266c75 100644 (file)
@@ -19,9 +19,8 @@
 #include <bpf/bpf_helpers.h>
 #include <bpf/bpf_endian.h>
 
-int _version SEC("version") = 1;
 #define PROG(F) PROG_(F, _##F)
-#define PROG_(NUM, NAME) SEC("flow_dissector/"#NUM) int bpf_func##NAME
+#define PROG_(NUM, NAME) SEC("flow_dissector") int flow_dissector_##NUM
 
 /* These are the identifiers of the BPF programs that will be used in tail
  * calls. Name is limited to 16 characters, with the terminating character and
index a253730..3f81ff9 100644 (file)
@@ -20,7 +20,7 @@ struct {
 
 __u32 invocations = 0;
 
-SEC("cgroup_skb/egress/1")
+SEC("cgroup_skb/egress")
 int egress1(struct __sk_buff *skb)
 {
        struct cgroup_value *ptr_cg_storage =
@@ -32,7 +32,7 @@ int egress1(struct __sk_buff *skb)
        return 1;
 }
 
-SEC("cgroup_skb/egress/2")
+SEC("cgroup_skb/egress")
 int egress2(struct __sk_buff *skb)
 {
        struct cgroup_value *ptr_cg_storage =
index a149f33..d662db2 100644 (file)
@@ -20,7 +20,7 @@ struct {
 
 __u32 invocations = 0;
 
-SEC("cgroup_skb/egress/1")
+SEC("cgroup_skb/egress")
 int egress1(struct __sk_buff *skb)
 {
        struct cgroup_value *ptr_cg_storage =
@@ -32,7 +32,7 @@ int egress1(struct __sk_buff *skb)
        return 1;
 }
 
-SEC("cgroup_skb/egress/2")
+SEC("cgroup_skb/egress")
 int egress2(struct __sk_buff *skb)
 {
        struct cgroup_value *ptr_cg_storage =
index 9d8c212..177a590 100644 (file)
@@ -4,9 +4,8 @@
 #include <bpf/bpf_helpers.h>
 
 char _license[] SEC("license") = "GPL";
-__u32 _version SEC("version") = 1;
 
-SEC("cgroup/getsockopt/child")
+SEC("cgroup/getsockopt")
 int _getsockopt_child(struct bpf_sockopt *ctx)
 {
        __u8 *optval_end = ctx->optval_end;
@@ -29,7 +28,7 @@ int _getsockopt_child(struct bpf_sockopt *ctx)
        return 1;
 }
 
-SEC("cgroup/getsockopt/parent")
+SEC("cgroup/getsockopt")
 int _getsockopt_parent(struct bpf_sockopt *ctx)
 {
        __u8 *optval_end = ctx->optval_end;
index 77e47b9..4faba88 100644 (file)
@@ -6,14 +6,14 @@
 int calls = 0;
 int alt_calls = 0;
 
-SEC("cgroup_skb/egress1")
+SEC("cgroup_skb/egress")
 int egress(struct __sk_buff *skb)
 {
        __sync_fetch_and_add(&calls, 1);
        return 1;
 }
 
-SEC("cgroup_skb/egress2")
+SEC("cgroup_skb/egress")
 int egress_alt(struct __sk_buff *skb)
 {
        __sync_fetch_and_add(&alt_calls, 1);
index 6077a02..2c121c5 100644 (file)
@@ -293,7 +293,7 @@ static int handle_passive_estab(struct bpf_sock_ops *skops)
        return check_active_hdr_in(skops);
 }
 
-SEC("sockops/misc_estab")
+SEC("sockops")
 int misc_estab(struct bpf_sock_ops *skops)
 {
        int true_val = 1;
index ac6f7f2..6c4d32c 100644 (file)
@@ -84,13 +84,13 @@ int lookup_drop(struct bpf_sk_lookup *ctx)
        return SK_DROP;
 }
 
-SEC("sk_reuseport/reuse_pass")
+SEC("sk_reuseport")
 int reuseport_pass(struct sk_reuseport_md *ctx)
 {
        return SK_PASS;
 }
 
-SEC("sk_reuseport/reuse_drop")
+SEC("sk_reuseport")
 int reuseport_drop(struct sk_reuseport_md *ctx)
 {
        return SK_DROP;
@@ -194,7 +194,7 @@ int select_sock_a_no_reuseport(struct bpf_sk_lookup *ctx)
        return err ? SK_DROP : SK_PASS;
 }
 
-SEC("sk_reuseport/select_sock_b")
+SEC("sk_reuseport")
 int select_sock_b(struct sk_reuseport_md *ctx)
 {
        __u32 key = KEY_SERVER_B;
index a1cc58b..00f1456 100644 (file)
@@ -56,7 +56,7 @@ int prog_stream_verdict(struct __sk_buff *skb)
        return verdict;
 }
 
-SEC("sk_skb/skb_verdict")
+SEC("sk_skb")
 int prog_skb_verdict(struct __sk_buff *skb)
 {
        unsigned int *count;
index 2d31f66..3c69aa9 100644 (file)
@@ -9,7 +9,7 @@ struct {
        __type(value, __u64);
 } sock_map SEC(".maps");
 
-SEC("sk_skb/skb_verdict")
+SEC("sk_skb")
 int prog_skb_verdict(struct __sk_buff *skb)
 {
        return SK_DROP;
index 678bd0f..5f4e87e 100644 (file)
@@ -594,7 +594,7 @@ static int handle_parse_hdr(struct bpf_sock_ops *skops)
        return CG_OK;
 }
 
-SEC("sockops/estab")
+SEC("sockops")
 int estab(struct bpf_sock_ops *skops)
 {
        int true_val = 1;