aboutsummaryrefslogtreecommitdiffstats
path: root/tools/testing/selftests/bpf/bpf_testmod/bpf_testmod-events.h
diff options
context:
space:
mode:
authorHou Tao <houtao1@huawei.com>2021-10-04 17:48:57 +0800
committerAndrii Nakryiko <andrii@kernel.org>2021-10-08 13:22:57 -0700
commitfa7f17d066bd0996b930b664aa0ed1f213fc1828 (patch)
treee2abd0f4d04594fc4204db299cb5b74be0d222f8 /tools/testing/selftests/bpf/bpf_testmod/bpf_testmod-events.h
parentlibbpf: Support detecting and attaching of writable tracepoint program (diff)
downloadlinux-dev-fa7f17d066bd0996b930b664aa0ed1f213fc1828.tar.xz
linux-dev-fa7f17d066bd0996b930b664aa0ed1f213fc1828.zip
bpf/selftests: Add test for writable bare tracepoint
Add a writable bare tracepoint in bpf_testmod module, and trigger its calling when reading /sys/kernel/bpf_testmod with a specific buffer length. The reading will return the value in writable context if the early return flag is enabled in writable context. Signed-off-by: Hou Tao <houtao1@huawei.com> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Acked-by: Andrii Nakryiko <andrii@kernel.org> Link: https://lore.kernel.org/bpf/20211004094857.30868-4-hotforest@gmail.com
Diffstat (limited to 'tools/testing/selftests/bpf/bpf_testmod/bpf_testmod-events.h')
-rw-r--r--tools/testing/selftests/bpf/bpf_testmod/bpf_testmod-events.h15
1 files changed, 15 insertions, 0 deletions
diff --git a/tools/testing/selftests/bpf/bpf_testmod/bpf_testmod-events.h b/tools/testing/selftests/bpf/bpf_testmod/bpf_testmod-events.h
index 89c6d58e5dd6..11ee801e75e7 100644
--- a/tools/testing/selftests/bpf/bpf_testmod/bpf_testmod-events.h
+++ b/tools/testing/selftests/bpf/bpf_testmod/bpf_testmod-events.h
@@ -34,6 +34,21 @@ DECLARE_TRACE(bpf_testmod_test_write_bare,
TP_ARGS(task, ctx)
);
+#undef BPF_TESTMOD_DECLARE_TRACE
+#ifdef DECLARE_TRACE_WRITABLE
+#define BPF_TESTMOD_DECLARE_TRACE(call, proto, args, size) \
+ DECLARE_TRACE_WRITABLE(call, PARAMS(proto), PARAMS(args), size)
+#else
+#define BPF_TESTMOD_DECLARE_TRACE(call, proto, args, size) \
+ DECLARE_TRACE(call, PARAMS(proto), PARAMS(args))
+#endif
+
+BPF_TESTMOD_DECLARE_TRACE(bpf_testmod_test_writable_bare,
+ TP_PROTO(struct bpf_testmod_test_writable_ctx *ctx),
+ TP_ARGS(ctx),
+ sizeof(struct bpf_testmod_test_writable_ctx)
+);
+
#endif /* _BPF_TESTMOD_EVENTS_H */
#undef TRACE_INCLUDE_PATH