From: Yonghong Song <yonghong.song@linux.dev>
To: bpf@vger.kernel.org
Cc: Alexei Starovoitov <ast@kernel.org>,
Andrii Nakryiko <andrii@kernel.org>,
Daniel Borkmann <daniel@iogearbox.net>,
kernel-team@fb.com, Martin KaFai Lau <martin.lau@kernel.org>
Subject: [PATCH bpf-next v2 2/3] selftests/bpf: Add test_usdt_multispec.inc.h for sharing between multiple progs
Date: Sun, 15 Jun 2025 11:53:56 -0700 [thread overview]
Message-ID: <20250615185356.2757535-1-yonghong.song@linux.dev> (raw)
In-Reply-To: <20250615185345.2756663-1-yonghong.song@linux.dev>
Replace test_usdt_multispec.c to test_usdt_multispec.inc.h so the bpf prog
usdt_100 can be used for multiple bpf programs. The newer test_usdt_multispec.c
will just include test_usdt_multispec.inc.h.
Signed-off-by: Yonghong Song <yonghong.song@linux.dev>
---
.../selftests/bpf/progs/test_usdt_multispec.c | 28 +----------------
.../bpf/progs/test_usdt_multispec.inc.h | 30 +++++++++++++++++++
2 files changed, 31 insertions(+), 27 deletions(-)
create mode 100644 tools/testing/selftests/bpf/progs/test_usdt_multispec.inc.h
diff --git a/tools/testing/selftests/bpf/progs/test_usdt_multispec.c b/tools/testing/selftests/bpf/progs/test_usdt_multispec.c
index 962f3462066a..97c6082df328 100644
--- a/tools/testing/selftests/bpf/progs/test_usdt_multispec.c
+++ b/tools/testing/selftests/bpf/progs/test_usdt_multispec.c
@@ -1,30 +1,4 @@
// SPDX-License-Identifier: GPL-2.0
/* Copyright (c) 2022 Meta Platforms, Inc. and affiliates. */
-#include "vmlinux.h"
-#include <bpf/bpf_helpers.h>
-#include <bpf/usdt.bpf.h>
-
-/* this file is linked together with test_usdt.c to validate that usdt.bpf.h
- * can be included in multiple .bpf.c files forming single final BPF object
- * file
- */
-
-extern int my_pid;
-
-int usdt_100_called;
-int usdt_100_sum;
-
-SEC("usdt//proc/self/exe:test:usdt_100")
-int BPF_USDT(usdt_100, int x)
-{
- if (my_pid != (bpf_get_current_pid_tgid() >> 32))
- return 0;
-
- __sync_fetch_and_add(&usdt_100_called, 1);
- __sync_fetch_and_add(&usdt_100_sum, x);
-
- return 0;
-}
-
-char _license[] SEC("license") = "GPL";
+#include "test_usdt_multispec.inc.h"
diff --git a/tools/testing/selftests/bpf/progs/test_usdt_multispec.inc.h b/tools/testing/selftests/bpf/progs/test_usdt_multispec.inc.h
new file mode 100644
index 000000000000..962f3462066a
--- /dev/null
+++ b/tools/testing/selftests/bpf/progs/test_usdt_multispec.inc.h
@@ -0,0 +1,30 @@
+// SPDX-License-Identifier: GPL-2.0
+/* Copyright (c) 2022 Meta Platforms, Inc. and affiliates. */
+
+#include "vmlinux.h"
+#include <bpf/bpf_helpers.h>
+#include <bpf/usdt.bpf.h>
+
+/* this file is linked together with test_usdt.c to validate that usdt.bpf.h
+ * can be included in multiple .bpf.c files forming single final BPF object
+ * file
+ */
+
+extern int my_pid;
+
+int usdt_100_called;
+int usdt_100_sum;
+
+SEC("usdt//proc/self/exe:test:usdt_100")
+int BPF_USDT(usdt_100, int x)
+{
+ if (my_pid != (bpf_get_current_pid_tgid() >> 32))
+ return 0;
+
+ __sync_fetch_and_add(&usdt_100_called, 1);
+ __sync_fetch_and_add(&usdt_100_sum, x);
+
+ return 0;
+}
+
+char _license[] SEC("license") = "GPL";
--
2.47.1
next prev parent reply other threads:[~2025-06-15 18:54 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2025-06-15 18:53 [PATCH bpf-next v2 0/3] selftests/bpf: Fix usdt/multispec failure with arm64/clang20 Yonghong Song
2025-06-15 18:53 ` [PATCH bpf-next v2 1/3] selftests/bpf: Refactor the failed assertion to another subtest Yonghong Song
2025-06-16 8:33 ` Jiri Olsa
2025-06-16 15:48 ` Yonghong Song
2025-06-16 22:00 ` Andrii Nakryiko
2025-06-18 4:36 ` Yonghong Song
2025-06-24 15:36 ` Andrii Nakryiko
2025-06-24 16:15 ` Yonghong Song
2025-06-24 19:48 ` Andrii Nakryiko
2025-06-24 20:21 ` Yonghong Song
2025-06-15 18:53 ` Yonghong Song [this message]
2025-06-15 18:54 ` [PATCH bpf-next v2 3/3] selftests/bpf: Add subtest usdt_multispec_fail with adjustable BPF_USDT_MAX_SPEC_CNT Yonghong Song
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20250615185356.2757535-1-yonghong.song@linux.dev \
--to=yonghong.song@linux.dev \
--cc=andrii@kernel.org \
--cc=ast@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=daniel@iogearbox.net \
--cc=kernel-team@fb.com \
--cc=martin.lau@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.