selftests/bpf: Use explicit bpf_prog_test_load() calls everywhere
-Dbpf_prog_load_deprecated=bpf_prog_test_load trick is both ugly and breaks when deprecation goes into effect due to macro magic. Convert all the uses to explicit bpf_prog_test_load() calls which avoid deprecation errors and makes everything less magical. 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/20211103220845.2676888-12-andrii@kernel.org
This commit is contained in:
parent
f87c1930ac
commit
cbdb1461dc
@ -24,7 +24,6 @@ SAN_CFLAGS ?=
|
||||
CFLAGS += -g -O0 -rdynamic -Wall $(GENFLAGS) $(SAN_CFLAGS) \
|
||||
-I$(CURDIR) -I$(INCLUDE_DIR) -I$(GENDIR) -I$(LIBDIR) \
|
||||
-I$(TOOLSINCDIR) -I$(APIDIR) -I$(OUTPUT) \
|
||||
-Dbpf_prog_load_deprecated=bpf_prog_test_load \
|
||||
-Dbpf_load_program=bpf_test_load_program
|
||||
LDLIBS += -lcap -lelf -lz -lrt -lpthread
|
||||
|
||||
@ -207,6 +206,7 @@ $(OUTPUT)/test_lirc_mode2_user: testing_helpers.o
|
||||
$(OUTPUT)/xdping: testing_helpers.o
|
||||
$(OUTPUT)/flow_dissector_load: testing_helpers.o
|
||||
$(OUTPUT)/test_maps: testing_helpers.o
|
||||
$(OUTPUT)/test_verifier: testing_helpers.o
|
||||
|
||||
BPFTOOL ?= $(DEFAULT_BPFTOOL)
|
||||
$(DEFAULT_BPFTOOL): $(wildcard $(BPFTOOLDIR)/*.[ch] $(BPFTOOLDIR)/Makefile) \
|
||||
|
@ -4,6 +4,7 @@
|
||||
|
||||
#include <bpf/bpf.h>
|
||||
#include <bpf/libbpf.h>
|
||||
#include "testing_helpers.h"
|
||||
|
||||
static inline int bpf_flow_load(struct bpf_object **obj,
|
||||
const char *path,
|
||||
@ -18,7 +19,7 @@ static inline int bpf_flow_load(struct bpf_object **obj,
|
||||
int prog_array_fd;
|
||||
int ret, fd, i;
|
||||
|
||||
ret = bpf_prog_load(path, BPF_PROG_TYPE_FLOW_DISSECTOR, obj,
|
||||
ret = bpf_prog_test_load(path, BPF_PROG_TYPE_FLOW_DISSECTOR, obj,
|
||||
prog_fd);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
@ -19,6 +19,7 @@
|
||||
#include <bpf/libbpf.h>
|
||||
|
||||
#include "cgroup_helpers.h"
|
||||
#include "testing_helpers.h"
|
||||
#include "bpf_rlimit.h"
|
||||
|
||||
#define CHECK(condition, tag, format...) ({ \
|
||||
@ -66,8 +67,8 @@ int main(int argc, char **argv)
|
||||
if (CHECK(cgroup_fd < 0, "cgroup_setup_and_join", "err %d errno %d\n", cgroup_fd, errno))
|
||||
return 1;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err, "bpf_prog_load", "err %d errno %d\n", err, errno))
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err, "bpf_prog_test_load", "err %d errno %d\n", err, errno))
|
||||
goto cleanup_cgroup_env;
|
||||
|
||||
cgidmap_fd = bpf_find_map(__func__, obj, "cg_ids");
|
||||
|
@ -48,7 +48,7 @@ void serial_test_bpf_obj_id(void)
|
||||
bzero(zeros, sizeof(zeros));
|
||||
for (i = 0; i < nr_iters; i++) {
|
||||
now = time(NULL);
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_RAW_TRACEPOINT,
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_RAW_TRACEPOINT,
|
||||
&objs[i], &prog_fds[i]);
|
||||
/* test_obj_id.o is a dumb prog. It should never fail
|
||||
* to load.
|
||||
|
@ -65,7 +65,7 @@ static void test_fexit_bpf2bpf_common(const char *obj_file,
|
||||
int err, tgt_fd, i;
|
||||
struct btf *btf;
|
||||
|
||||
err = bpf_prog_load(target_obj_file, BPF_PROG_TYPE_UNSPEC,
|
||||
err = bpf_prog_test_load(target_obj_file, BPF_PROG_TYPE_UNSPEC,
|
||||
&tgt_obj, &tgt_fd);
|
||||
if (!ASSERT_OK(err, "tgt_prog_load"))
|
||||
return;
|
||||
@ -224,7 +224,7 @@ static int test_second_attach(struct bpf_object *obj)
|
||||
if (CHECK(!prog, "find_prog", "prog %s not found\n", prog_name))
|
||||
return -ENOENT;
|
||||
|
||||
err = bpf_prog_load(tgt_obj_file, BPF_PROG_TYPE_UNSPEC,
|
||||
err = bpf_prog_test_load(tgt_obj_file, BPF_PROG_TYPE_UNSPEC,
|
||||
&tgt_obj, &tgt_fd);
|
||||
if (CHECK(err, "second_prog_load", "file %s err %d errno %d\n",
|
||||
tgt_obj_file, err, errno))
|
||||
@ -274,7 +274,7 @@ static void test_fmod_ret_freplace(void)
|
||||
__u32 duration = 0;
|
||||
int err, pkt_fd, attach_prog_fd;
|
||||
|
||||
err = bpf_prog_load(tgt_name, BPF_PROG_TYPE_UNSPEC,
|
||||
err = bpf_prog_test_load(tgt_name, BPF_PROG_TYPE_UNSPEC,
|
||||
&pkt_obj, &pkt_fd);
|
||||
/* the target prog should load fine */
|
||||
if (CHECK(err, "tgt_prog_load", "file %s err %d errno %d\n",
|
||||
@ -341,7 +341,7 @@ static void test_obj_load_failure_common(const char *obj_file,
|
||||
int err, pkt_fd;
|
||||
__u32 duration = 0;
|
||||
|
||||
err = bpf_prog_load(target_obj_file, BPF_PROG_TYPE_UNSPEC,
|
||||
err = bpf_prog_test_load(target_obj_file, BPF_PROG_TYPE_UNSPEC,
|
||||
&pkt_obj, &pkt_fd);
|
||||
/* the target prog should load fine */
|
||||
if (CHECK(err, "tgt_prog_load", "file %s err %d errno %d\n",
|
||||
|
@ -94,11 +94,11 @@ void test_get_stack_raw_tp(void)
|
||||
struct bpf_map *map;
|
||||
cpu_set_t cpu_set;
|
||||
|
||||
err = bpf_prog_load(file_err, BPF_PROG_TYPE_RAW_TRACEPOINT, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file_err, BPF_PROG_TYPE_RAW_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err >= 0, "prog_load raw tp", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_RAW_TRACEPOINT, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_RAW_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err, "prog_load raw tp", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
||||
|
@ -136,7 +136,7 @@ void test_global_data(void)
|
||||
struct bpf_object *obj;
|
||||
int err, prog_fd;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
if (CHECK(err, "load program", "error %d loading %s\n", err, file))
|
||||
return;
|
||||
|
||||
|
@ -44,7 +44,7 @@ void test_global_func_args(void)
|
||||
struct bpf_object *obj;
|
||||
int err, prog_fd;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_CGROUP_SKB, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_CGROUP_SKB, &obj, &prog_fd);
|
||||
if (CHECK(err, "load program", "error %d loading %s\n", err, file))
|
||||
return;
|
||||
|
||||
|
@ -74,7 +74,7 @@ void serial_test_kfree_skb(void)
|
||||
const int zero = 0;
|
||||
bool test_ok[2];
|
||||
|
||||
err = bpf_prog_load("./test_pkt_access.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
err = bpf_prog_test_load("./test_pkt_access.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
&obj, &tattr.prog_fd);
|
||||
if (CHECK(err, "prog_load sched cls", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
@ -30,7 +30,7 @@ static void test_l4lb(const char *file)
|
||||
char buf[128];
|
||||
u32 *magic = (u32 *)buf;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
|
@ -27,7 +27,7 @@ void test_load_bytes_relative(void)
|
||||
if (CHECK_FAIL(server_fd < 0))
|
||||
goto close_cgroup_fd;
|
||||
|
||||
err = bpf_prog_load("./load_bytes_relative.o", BPF_PROG_TYPE_CGROUP_SKB,
|
||||
err = bpf_prog_test_load("./load_bytes_relative.o", BPF_PROG_TYPE_CGROUP_SKB,
|
||||
&obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
goto close_server_fd;
|
||||
|
@ -53,9 +53,9 @@ void test_map_lock(void)
|
||||
int err = 0, key = 0, i;
|
||||
void *ret;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_CGROUP_SKB, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_CGROUP_SKB, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err)) {
|
||||
printf("test_map_lock:bpf_prog_load errno %d\n", errno);
|
||||
printf("test_map_lock:bpf_prog_test_load errno %d\n", errno);
|
||||
goto close_prog;
|
||||
}
|
||||
map_fd[0] = bpf_find_map(__func__, obj, "hash_map");
|
||||
|
@ -9,7 +9,7 @@ void test_pkt_access(void)
|
||||
__u32 duration, retval;
|
||||
int err, prog_fd;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
|
@ -9,7 +9,7 @@ void test_pkt_md_access(void)
|
||||
__u32 duration, retval;
|
||||
int err, prog_fd;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
|
@ -27,7 +27,7 @@ static void test_queue_stack_map_by_type(int type)
|
||||
else
|
||||
return;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_SCHED_CLS, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
|
@ -32,7 +32,7 @@ void test_skb_ctx(void)
|
||||
int err;
|
||||
int i;
|
||||
|
||||
err = bpf_prog_load("./test_skb_ctx.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
err = bpf_prog_test_load("./test_skb_ctx.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
&tattr.prog_fd);
|
||||
if (CHECK_ATTR(err, "load", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
@ -20,7 +20,7 @@ void test_skb_helpers(void)
|
||||
struct bpf_object *obj;
|
||||
int err;
|
||||
|
||||
err = bpf_prog_load("./test_skb_helpers.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
err = bpf_prog_test_load("./test_skb_helpers.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
&tattr.prog_fd);
|
||||
if (CHECK_ATTR(err, "load", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
@ -24,9 +24,9 @@ void test_spinlock(void)
|
||||
int err = 0, i;
|
||||
void *ret;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_CGROUP_SKB, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_CGROUP_SKB, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err)) {
|
||||
printf("test_spin_lock:bpf_prog_load errno %d\n", errno);
|
||||
printf("test_spin_lock:bpf_prog_test_load errno %d\n", errno);
|
||||
goto close_prog;
|
||||
}
|
||||
for (i = 0; i < 4; i++)
|
||||
|
@ -12,7 +12,7 @@ void test_stacktrace_map(void)
|
||||
struct bpf_object *obj;
|
||||
struct bpf_link *link;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err, "prog_load", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
||||
|
@ -12,7 +12,7 @@ void test_stacktrace_map_raw_tp(void)
|
||||
struct bpf_object *obj;
|
||||
struct bpf_link *link = NULL;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_RAW_TRACEPOINT, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_RAW_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err, "prog_load raw tp", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
||||
|
@ -16,7 +16,7 @@ static void test_tailcall_1(void)
|
||||
char prog_name[32];
|
||||
char buff[128] = {};
|
||||
|
||||
err = bpf_prog_load("tailcall1.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
err = bpf_prog_test_load("tailcall1.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
&prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
@ -154,7 +154,7 @@ static void test_tailcall_2(void)
|
||||
char prog_name[32];
|
||||
char buff[128] = {};
|
||||
|
||||
err = bpf_prog_load("tailcall2.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
err = bpf_prog_test_load("tailcall2.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
&prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
@ -228,7 +228,7 @@ static void test_tailcall_count(const char *which)
|
||||
__u32 retval, duration;
|
||||
char buff[128] = {};
|
||||
|
||||
err = bpf_prog_load(which, BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
err = bpf_prog_test_load(which, BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
&prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
@ -324,7 +324,7 @@ static void test_tailcall_4(void)
|
||||
char buff[128] = {};
|
||||
char prog_name[32];
|
||||
|
||||
err = bpf_prog_load("tailcall4.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
err = bpf_prog_test_load("tailcall4.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
&prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
@ -412,7 +412,7 @@ static void test_tailcall_5(void)
|
||||
char buff[128] = {};
|
||||
char prog_name[32];
|
||||
|
||||
err = bpf_prog_load("tailcall5.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
err = bpf_prog_test_load("tailcall5.o", BPF_PROG_TYPE_SCHED_CLS, &obj,
|
||||
&prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
@ -498,7 +498,7 @@ static void test_tailcall_bpf2bpf_1(void)
|
||||
__u32 retval, duration;
|
||||
char prog_name[32];
|
||||
|
||||
err = bpf_prog_load("tailcall_bpf2bpf1.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
err = bpf_prog_test_load("tailcall_bpf2bpf1.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
&obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
@ -582,7 +582,7 @@ static void test_tailcall_bpf2bpf_2(void)
|
||||
__u32 retval, duration;
|
||||
char buff[128] = {};
|
||||
|
||||
err = bpf_prog_load("tailcall_bpf2bpf2.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
err = bpf_prog_test_load("tailcall_bpf2bpf2.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
&obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
@ -660,7 +660,7 @@ static void test_tailcall_bpf2bpf_3(void)
|
||||
__u32 retval, duration;
|
||||
char prog_name[32];
|
||||
|
||||
err = bpf_prog_load("tailcall_bpf2bpf3.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
err = bpf_prog_test_load("tailcall_bpf2bpf3.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
&obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
@ -757,7 +757,7 @@ static void test_tailcall_bpf2bpf_4(bool noise)
|
||||
__u32 retval, duration;
|
||||
char prog_name[32];
|
||||
|
||||
err = bpf_prog_load("tailcall_bpf2bpf4.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
err = bpf_prog_test_load("tailcall_bpf2bpf4.o", BPF_PROG_TYPE_SCHED_CLS,
|
||||
&obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
@ -11,7 +11,7 @@ void test_task_fd_query_rawtp(void)
|
||||
__u32 duration = 0;
|
||||
char buf[256];
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_RAW_TRACEPOINT, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_RAW_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err, "prog_load raw tp", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
||||
|
@ -13,8 +13,8 @@ static void test_task_fd_query_tp_core(const char *probe_name,
|
||||
__u32 duration = 0;
|
||||
char buf[256];
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err, "bpf_prog_load", "err %d errno %d\n", err, errno))
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
|
||||
if (CHECK(err, "bpf_prog_test_load", "err %d errno %d\n", err, errno))
|
||||
goto close_prog;
|
||||
|
||||
snprintf(buf, sizeof(buf),
|
||||
|
@ -8,7 +8,7 @@ void test_tcp_estats(void)
|
||||
struct bpf_object *obj;
|
||||
__u32 duration = 0;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj, &prog_fd);
|
||||
CHECK(err, "", "err %d errno %d\n", err, errno);
|
||||
if (err)
|
||||
return;
|
||||
|
@ -35,7 +35,7 @@ void serial_test_tp_attach_query(void)
|
||||
|
||||
query = malloc(sizeof(*query) + sizeof(__u32) * num_progs);
|
||||
for (i = 0; i < num_progs; i++) {
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj[i],
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_TRACEPOINT, &obj[i],
|
||||
&prog_fd[i]);
|
||||
if (CHECK(err, "prog_load", "err %d errno %d\n", err, errno))
|
||||
goto cleanup1;
|
||||
|
@ -16,7 +16,7 @@ void test_xdp(void)
|
||||
__u32 duration, retval, size;
|
||||
int err, prog_fd, map_fd;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
|
@ -10,7 +10,7 @@ static void test_xdp_adjust_tail_shrink(void)
|
||||
int err, prog_fd;
|
||||
char buf[128];
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
@ -38,7 +38,7 @@ static void test_xdp_adjust_tail_grow(void)
|
||||
__u32 duration, retval, size, expect_sz;
|
||||
int err, prog_fd;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
@ -75,7 +75,7 @@ static void test_xdp_adjust_tail_grow2(void)
|
||||
.data_size_out = 0, /* Per test */
|
||||
};
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj, &tattr.prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj, &tattr.prog_fd);
|
||||
if (CHECK_ATTR(err, "load", "err %d errno %d\n", err, errno))
|
||||
return;
|
||||
|
||||
|
@ -16,7 +16,7 @@ void serial_test_xdp_attach(void)
|
||||
|
||||
len = sizeof(info);
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj1, &fd1);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj1, &fd1);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
err = bpf_obj_get_info_by_fd(fd1, &info, &len);
|
||||
@ -24,7 +24,7 @@ void serial_test_xdp_attach(void)
|
||||
goto out_1;
|
||||
id1 = info.id;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj2, &fd2);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj2, &fd2);
|
||||
if (CHECK_FAIL(err))
|
||||
goto out_1;
|
||||
|
||||
@ -34,7 +34,7 @@ void serial_test_xdp_attach(void)
|
||||
goto out_2;
|
||||
id2 = info.id;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj3, &fd3);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj3, &fd3);
|
||||
if (CHECK_FAIL(err))
|
||||
goto out_2;
|
||||
|
||||
|
@ -29,7 +29,7 @@ void serial_test_xdp_info(void)
|
||||
|
||||
/* Setup prog */
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
|
@ -9,7 +9,7 @@ void test_xdp_perf(void)
|
||||
char in[128], out[128];
|
||||
int err, prog_fd;
|
||||
|
||||
err = bpf_prog_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
err = bpf_prog_test_load(file, BPF_PROG_TYPE_XDP, &obj, &prog_fd);
|
||||
if (CHECK_FAIL(err))
|
||||
return;
|
||||
|
||||
|
@ -73,7 +73,7 @@ int test_subprog2(struct args_subprog2 *ctx)
|
||||
__builtin_preserve_access_index(&skb->len));
|
||||
|
||||
ret = ctx->ret;
|
||||
/* bpf_prog_load() loads "test_pkt_access.o" with BPF_F_TEST_RND_HI32
|
||||
/* bpf_prog_test_load() loads "test_pkt_access.o" with BPF_F_TEST_RND_HI32
|
||||
* which randomizes upper 32 bits after BPF_ALU32 insns.
|
||||
* Hence after 'w0 <<= 1' upper bits of $rax are random.
|
||||
* That is expected and correct. Trim them.
|
||||
|
@ -14,6 +14,7 @@
|
||||
#include <bpf/libbpf.h>
|
||||
|
||||
#include "cgroup_helpers.h"
|
||||
#include "testing_helpers.h"
|
||||
#include "bpf_rlimit.h"
|
||||
|
||||
#define DEV_CGROUP_PROG "./dev_cgroup.o"
|
||||
@ -27,7 +28,7 @@ int main(int argc, char **argv)
|
||||
int prog_fd, cgroup_fd;
|
||||
__u32 prog_cnt;
|
||||
|
||||
if (bpf_prog_load(DEV_CGROUP_PROG, BPF_PROG_TYPE_CGROUP_DEVICE,
|
||||
if (bpf_prog_test_load(DEV_CGROUP_PROG, BPF_PROG_TYPE_CGROUP_DEVICE,
|
||||
&obj, &prog_fd)) {
|
||||
printf("Failed to load DEV_CGROUP program\n");
|
||||
goto out;
|
||||
|
@ -45,6 +45,8 @@
|
||||
#include <bpf/bpf.h>
|
||||
#include <bpf/libbpf.h>
|
||||
|
||||
#include "testing_helpers.h"
|
||||
|
||||
int main(int argc, char **argv)
|
||||
{
|
||||
struct bpf_object *obj;
|
||||
@ -58,8 +60,8 @@ int main(int argc, char **argv)
|
||||
return 2;
|
||||
}
|
||||
|
||||
ret = bpf_prog_load("test_lirc_mode2_kern.o",
|
||||
BPF_PROG_TYPE_LIRC_MODE2, &obj, &progfd);
|
||||
ret = bpf_prog_test_load("test_lirc_mode2_kern.o",
|
||||
BPF_PROG_TYPE_LIRC_MODE2, &obj, &progfd);
|
||||
if (ret) {
|
||||
printf("Failed to load bpf program\n");
|
||||
return 1;
|
||||
|
@ -25,6 +25,7 @@
|
||||
#include "bpf_util.h"
|
||||
#include "bpf_rlimit.h"
|
||||
#include "test_maps.h"
|
||||
#include "testing_helpers.h"
|
||||
|
||||
#ifndef ENOTSUPP
|
||||
#define ENOTSUPP 524
|
||||
@ -830,21 +831,21 @@ static void test_sockmap(unsigned int tasks, void *data)
|
||||
}
|
||||
|
||||
/* Load SK_SKB program and Attach */
|
||||
err = bpf_prog_load(SOCKMAP_PARSE_PROG,
|
||||
err = bpf_prog_test_load(SOCKMAP_PARSE_PROG,
|
||||
BPF_PROG_TYPE_SK_SKB, &obj, &parse_prog);
|
||||
if (err) {
|
||||
printf("Failed to load SK_SKB parse prog\n");
|
||||
goto out_sockmap;
|
||||
}
|
||||
|
||||
err = bpf_prog_load(SOCKMAP_TCP_MSG_PROG,
|
||||
err = bpf_prog_test_load(SOCKMAP_TCP_MSG_PROG,
|
||||
BPF_PROG_TYPE_SK_MSG, &obj, &msg_prog);
|
||||
if (err) {
|
||||
printf("Failed to load SK_SKB msg prog\n");
|
||||
goto out_sockmap;
|
||||
}
|
||||
|
||||
err = bpf_prog_load(SOCKMAP_VERDICT_PROG,
|
||||
err = bpf_prog_test_load(SOCKMAP_VERDICT_PROG,
|
||||
BPF_PROG_TYPE_SK_SKB, &obj, &verdict_prog);
|
||||
if (err) {
|
||||
printf("Failed to load SK_SKB verdict prog\n");
|
||||
|
@ -17,6 +17,7 @@
|
||||
#include "bpf_rlimit.h"
|
||||
#include "bpf_util.h"
|
||||
#include "cgroup_helpers.h"
|
||||
#include "testing_helpers.h"
|
||||
|
||||
#define CG_PATH "/foo"
|
||||
#define MAX_INSNS 512
|
||||
|
@ -25,6 +25,7 @@
|
||||
|
||||
#include "test_tcpnotify.h"
|
||||
#include "trace_helpers.h"
|
||||
#include "testing_helpers.h"
|
||||
|
||||
#define SOCKET_BUFFER_SIZE (getpagesize() < 8192L ? getpagesize() : 8192L)
|
||||
|
||||
@ -92,7 +93,7 @@ int main(int argc, char **argv)
|
||||
if (cg_fd < 0)
|
||||
goto err;
|
||||
|
||||
if (bpf_prog_load(file, BPF_PROG_TYPE_SOCK_OPS, &obj, &prog_fd)) {
|
||||
if (bpf_prog_test_load(file, BPF_PROG_TYPE_SOCK_OPS, &obj, &prog_fd)) {
|
||||
printf("FAILED: load_bpf_file failed for: %s\n", file);
|
||||
goto err;
|
||||
}
|
||||
|
@ -22,6 +22,7 @@
|
||||
#include "bpf/libbpf.h"
|
||||
|
||||
#include "xdping.h"
|
||||
#include "testing_helpers.h"
|
||||
|
||||
static int ifindex;
|
||||
static __u32 xdp_flags = XDP_FLAGS_UPDATE_IF_NOEXIST;
|
||||
@ -173,7 +174,7 @@ int main(int argc, char **argv)
|
||||
|
||||
snprintf(filename, sizeof(filename), "%s_kern.o", argv[0]);
|
||||
|
||||
if (bpf_prog_load(filename, BPF_PROG_TYPE_XDP, &obj, &prog_fd)) {
|
||||
if (bpf_prog_test_load(filename, BPF_PROG_TYPE_XDP, &obj, &prog_fd)) {
|
||||
fprintf(stderr, "load of %s failed\n", filename);
|
||||
return 1;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user