diff options
Diffstat (limited to 'tools/testing/selftests/bpf/prog_tests')
| -rw-r--r-- | tools/testing/selftests/bpf/prog_tests/core_kern.c | 16 | ||||
| -rw-r--r-- | tools/testing/selftests/bpf/prog_tests/core_kern_overflow.c | 13 | 
2 files changed, 28 insertions, 1 deletions
diff --git a/tools/testing/selftests/bpf/prog_tests/core_kern.c b/tools/testing/selftests/bpf/prog_tests/core_kern.c index 561c5185d886..6a5a1c019a5d 100644 --- a/tools/testing/selftests/bpf/prog_tests/core_kern.c +++ b/tools/testing/selftests/bpf/prog_tests/core_kern.c @@ -7,8 +7,22 @@  void test_core_kern_lskel(void)  {  	struct core_kern_lskel *skel; +	int link_fd;  	skel = core_kern_lskel__open_and_load(); -	ASSERT_OK_PTR(skel, "open_and_load"); +	if (!ASSERT_OK_PTR(skel, "open_and_load")) +		return; + +	link_fd = core_kern_lskel__core_relo_proto__attach(skel); +	if (!ASSERT_GT(link_fd, 0, "attach(core_relo_proto)")) +		goto cleanup; + +	/* trigger tracepoints */ +	usleep(1); +	ASSERT_TRUE(skel->bss->proto_out[0], "bpf_core_type_exists"); +	ASSERT_FALSE(skel->bss->proto_out[1], "!bpf_core_type_exists"); +	ASSERT_TRUE(skel->bss->proto_out[2], "bpf_core_type_exists. nested"); + +cleanup:  	core_kern_lskel__destroy(skel);  } diff --git a/tools/testing/selftests/bpf/prog_tests/core_kern_overflow.c b/tools/testing/selftests/bpf/prog_tests/core_kern_overflow.c new file mode 100644 index 000000000000..04cc145bc26a --- /dev/null +++ b/tools/testing/selftests/bpf/prog_tests/core_kern_overflow.c @@ -0,0 +1,13 @@ +// SPDX-License-Identifier: GPL-2.0 + +#include "test_progs.h" +#include "core_kern_overflow.lskel.h" + +void test_core_kern_overflow_lskel(void) +{ +	struct core_kern_overflow_lskel *skel; + +	skel = core_kern_overflow_lskel__open_and_load(); +	if (!ASSERT_NULL(skel, "open_and_load")) +		core_kern_overflow_lskel__destroy(skel); +}  |