On Fri, Jun 30, 2023 at 1:38 AM Jiri Olsa <jolsa@xxxxxxxxxx> wrote: > > Adding usdt_multi test program that defines 50k usdts and will > serve as attach point for uprobe_multi usdt bench test in > following patch. > > Signed-off-by: Jiri Olsa <jolsa@xxxxxxxxxx> > --- > tools/testing/selftests/bpf/Makefile | 5 +++++ > tools/testing/selftests/bpf/usdt_multi.c | 24 ++++++++++++++++++++++++ > 2 files changed, 29 insertions(+) > create mode 100644 tools/testing/selftests/bpf/usdt_multi.c > > diff --git a/tools/testing/selftests/bpf/Makefile b/tools/testing/selftests/bpf/Makefile > index acf7c9a29082..9762467cf0ba 100644 > --- a/tools/testing/selftests/bpf/Makefile > +++ b/tools/testing/selftests/bpf/Makefile > @@ -568,6 +568,7 @@ TRUNNER_EXTRA_FILES := $(OUTPUT)/urandom_read $(OUTPUT)/bpf_testmod.ko \ > $(OUTPUT)/xdp_synproxy \ > $(OUTPUT)/sign-file \ > $(OUTPUT)/uprobe_multi \ > + $(OUTPUT)/usdt_multi \ that's a bit too much, if you can't put everything into urandom_read, let's at least combine uprobe_multi and usdt_multi > ima_setup.sh \ > verify_sig_setup.sh \ > $(wildcard progs/btf_dump_test_case_*.c) \ > @@ -675,6 +676,10 @@ $(OUTPUT)/uprobe_multi: uprobe_multi.c > $(call msg,BINARY,,$@) > $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@ > > +$(OUTPUT)/usdt_multi: usdt_multi.c > + $(call msg,BINARY,,$@) > + $(Q)$(CC) $(CFLAGS) $(LDFLAGS) $^ $(LDLIBS) -o $@ > + > EXTRA_CLEAN := $(TEST_CUSTOM_PROGS) $(SCRATCH_DIR) $(HOST_SCRATCH_DIR) \ > prog_tests/tests.h map_tests/tests.h verifier/tests.h \ > feature bpftool \ > diff --git a/tools/testing/selftests/bpf/usdt_multi.c b/tools/testing/selftests/bpf/usdt_multi.c > new file mode 100644 > index 000000000000..fedf856bad2b > --- /dev/null > +++ b/tools/testing/selftests/bpf/usdt_multi.c > @@ -0,0 +1,24 @@ > +// SPDX-License-Identifier: GPL-2.0 > + > +#include <sdt.h> > + > +#define PROBE STAP_PROBE(test, usdt); > + > +#define PROBE10 PROBE PROBE PROBE PROBE PROBE \ > + PROBE PROBE PROBE PROBE PROBE > +#define PROBE100 PROBE10 PROBE10 PROBE10 PROBE10 PROBE10 \ > + PROBE10 PROBE10 PROBE10 PROBE10 PROBE10 > +#define PROBE1000 PROBE100 PROBE100 PROBE100 PROBE100 PROBE100 \ > + PROBE100 PROBE100 PROBE100 PROBE100 PROBE100 > +#define PROBE10000 PROBE1000 PROBE1000 PROBE1000 PROBE1000 PROBE1000 \ > + PROBE1000 PROBE1000 PROBE1000 PROBE1000 PROBE1000 > + > +int main(void) > +{ > + PROBE10000 > + PROBE10000 > + PROBE10000 > + PROBE10000 > + PROBE10000 > + return 0; > +} > -- > 2.41.0 >