From: Yucong Sun <fallentree@fb.com>
To: <bpf@vger.kernel.org>
Cc: <andrii@kernel.org>, <sunyucong@gmail.com>,
Yucong Sun <fallentree@fb.com>
Subject: [PATCH bpf-next v6 00/14] selftests/bpf: Add parallelism to test_progs
Date: Wed, 6 Oct 2021 11:56:05 -0700 [thread overview]
Message-ID: <20211006185619.364369-1-fallentree@fb.com> (raw)
This patch series adds "-j" parelell execution to test_progs, with "--debug" to
display server/worker communications. Also, some Tests that often fails in
parallel are marked as serial test, and it will run in sequence after parallel
execution is done.
This patch series also adds a error summary after all tests execution finished.
V6 -> V5:
* adding error summary logic for non parallel mode too.
* changed how serial tests are implemented, use main process instead of worker 0.
* fixed a dozen broken test when running in parallel.
V5 -> V4:
* change to SOCK_SEQPACKET for close notification.
* move all debug output to "--debug" mode
* output log as test finish, and all error logs again after summary line.
* variable naming / style changes
* adds serial_test_name() to replace serial test lists.
Yucong Sun (14):
selftests/bpf: Add parallelism to test_progs
selftests/bpf: Allow some tests to be executed in sequence
selftests/bpf: disable perf rate limiting when running tests.
selftests/bpf: add per worker cgroup suffix
selftests/bpf: adding read_perf_max_sample_freq() helper
selftests/bpf: fix race condition in enable_stats
selftests/bpf: make cgroup_v1v2 use its own port
selftests/bpf: adding a namespace reset for tc_redirect
selftests/bpf: Make uprobe tests use different attach functions.
selftests/bpf: adding pid filtering for atomics test
selftests/bpf: adding random delay for send_signal test
selftests/bpf: Fix pid check in fexit_sleep test
selftests/bpf: increase loop count for perf_branches
selfetest/bpf: make some tests serial
tools/testing/selftests/bpf/cgroup_helpers.c | 6 +-
tools/testing/selftests/bpf/cgroup_helpers.h | 2 +-
.../selftests/bpf/prog_tests/atomics.c | 1 +
.../selftests/bpf/prog_tests/attach_probe.c | 8 +-
.../selftests/bpf/prog_tests/bpf_cookie.c | 10 +-
.../bpf/prog_tests/bpf_iter_setsockopt.c | 2 +-
.../selftests/bpf/prog_tests/bpf_obj_id.c | 2 +-
.../bpf/prog_tests/cg_storage_multi.c | 2 +-
.../bpf/prog_tests/cgroup_attach_autodetach.c | 2 +-
.../bpf/prog_tests/cgroup_attach_multi.c | 2 +-
.../bpf/prog_tests/cgroup_attach_override.c | 2 +-
.../selftests/bpf/prog_tests/cgroup_link.c | 2 +-
.../selftests/bpf/prog_tests/cgroup_v1v2.c | 2 +-
.../selftests/bpf/prog_tests/check_mtu.c | 2 +-
.../selftests/bpf/prog_tests/fexit_bpf2bpf.c | 3 +-
.../prog_tests/flow_dissector_load_bytes.c | 2 +-
.../bpf/prog_tests/flow_dissector_reattach.c | 2 +-
.../bpf/prog_tests/get_branch_snapshot.c | 2 +-
.../selftests/bpf/prog_tests/kfree_skb.c | 3 +-
.../bpf/prog_tests/migrate_reuseport.c | 2 +-
.../selftests/bpf/prog_tests/modify_return.c | 3 +-
.../bpf/prog_tests/ns_current_pid_tgid.c | 3 +-
.../selftests/bpf/prog_tests/perf_branches.c | 10 +-
.../selftests/bpf/prog_tests/perf_buffer.c | 2 +-
.../selftests/bpf/prog_tests/perf_link.c | 5 +-
.../selftests/bpf/prog_tests/probe_user.c | 3 +-
.../bpf/prog_tests/raw_tp_writable_test_run.c | 3 +-
.../bpf/prog_tests/select_reuseport.c | 2 +-
.../selftests/bpf/prog_tests/send_signal.c | 6 +-
.../bpf/prog_tests/send_signal_sched_switch.c | 3 +-
.../bpf/prog_tests/sk_storage_tracing.c | 2 +-
.../selftests/bpf/prog_tests/snprintf_btf.c | 2 +-
.../selftests/bpf/prog_tests/sock_fields.c | 2 +-
.../selftests/bpf/prog_tests/sockmap_listen.c | 2 +-
.../bpf/prog_tests/stacktrace_build_id_nmi.c | 19 +-
.../selftests/bpf/prog_tests/task_pt_regs.c | 8 +-
.../selftests/bpf/prog_tests/tc_redirect.c | 14 +
.../testing/selftests/bpf/prog_tests/timer.c | 3 +-
.../selftests/bpf/prog_tests/timer_mim.c | 2 +-
.../bpf/prog_tests/tp_attach_query.c | 2 +-
.../selftests/bpf/prog_tests/trace_printk.c | 2 +-
.../selftests/bpf/prog_tests/trace_vprintk.c | 2 +-
.../bpf/prog_tests/trampoline_count.c | 3 +-
.../selftests/bpf/prog_tests/xdp_attach.c | 2 +-
.../selftests/bpf/prog_tests/xdp_bonding.c | 2 +-
.../bpf/prog_tests/xdp_cpumap_attach.c | 2 +-
.../bpf/prog_tests/xdp_devmap_attach.c | 2 +-
.../selftests/bpf/prog_tests/xdp_info.c | 2 +-
.../selftests/bpf/prog_tests/xdp_link.c | 2 +-
tools/testing/selftests/bpf/progs/atomics.c | 16 +
.../selftests/bpf/progs/connect4_dropper.c | 2 +-
.../testing/selftests/bpf/progs/fexit_sleep.c | 4 +-
.../selftests/bpf/progs/test_enable_stats.c | 2 +-
tools/testing/selftests/bpf/test_progs.c | 671 +++++++++++++++++-
tools/testing/selftests/bpf/test_progs.h | 37 +-
55 files changed, 790 insertions(+), 116 deletions(-)
--
2.30.2
next reply other threads:[~2021-10-06 18:56 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-10-06 18:56 Yucong Sun [this message]
2021-10-06 18:56 ` [PATCH bpf-next v6 01/14] selftests/bpf: Add parallelism to test_progs Yucong Sun
2021-10-08 22:26 ` Andrii Nakryiko
2021-10-06 18:56 ` [PATCH bpf-next v6 02/14] selftests/bpf: Allow some tests to be executed in sequence Yucong Sun
2021-10-08 22:26 ` Andrii Nakryiko
2021-10-08 23:06 ` sunyucong
2021-10-09 3:17 ` Andrii Nakryiko
2021-10-06 18:56 ` [PATCH bpf-next v6 03/14] selftests/bpf: disable perf rate limiting when running tests Yucong Sun
2021-10-08 22:26 ` Andrii Nakryiko
2021-10-06 18:56 ` [PATCH bpf-next v6 04/14] selftests/bpf: add per worker cgroup suffix Yucong Sun
2021-10-06 18:56 ` [PATCH bpf-next v6 05/14] selftests/bpf: adding read_perf_max_sample_freq() helper Yucong Sun
2021-10-08 22:27 ` Andrii Nakryiko
2021-10-08 22:49 ` sunyucong
2022-03-08 20:22 ` sunyucong
2021-10-06 18:56 ` [PATCH bpf-next v6 06/14] selftests/bpf: fix race condition in enable_stats Yucong Sun
2021-10-06 18:56 ` [PATCH bpf-next v6 07/14] selftests/bpf: make cgroup_v1v2 use its own port Yucong Sun
2021-10-06 18:56 ` [PATCH bpf-next v6 08/14] selftests/bpf: adding a namespace reset for tc_redirect Yucong Sun
2021-10-08 22:27 ` Andrii Nakryiko
2021-10-08 23:07 ` sunyucong
2021-10-06 18:56 ` [PATCH bpf-next v6 09/14] selftests/bpf: Make uprobe tests use different attach functions Yucong Sun
2021-10-08 22:27 ` Andrii Nakryiko
2021-10-08 22:46 ` sunyucong
2021-10-09 3:13 ` Andrii Nakryiko
2021-10-06 18:56 ` [PATCH bpf-next v6 10/14] selftests/bpf: adding pid filtering for atomics test Yucong Sun
2021-10-06 18:56 ` [PATCH bpf-next v6 11/14] selftests/bpf: adding random delay for send_signal test Yucong Sun
2021-10-08 22:27 ` Andrii Nakryiko
2021-10-06 18:56 ` [PATCH bpf-next v6 12/14] selftests/bpf: Fix pid check in fexit_sleep test Yucong Sun
2021-10-06 18:56 ` [PATCH bpf-next v6 13/14] selftests/bpf: increase loop count for perf_branches Yucong Sun
2021-10-08 22:27 ` Andrii Nakryiko
2021-10-08 22:57 ` sunyucong
2021-10-06 18:56 ` [PATCH bpf-next v6 14/14] selfetest/bpf: make some tests serial Yucong Sun
2021-10-08 22:27 ` Andrii Nakryiko
2021-10-08 22:55 ` sunyucong
2021-10-09 3:14 ` Andrii Nakryiko
2021-10-08 22:26 ` [PATCH bpf-next v6 00/14] selftests/bpf: Add parallelism to test_progs Andrii Nakryiko
2021-10-08 22:42 ` Andrii Nakryiko
2021-10-08 23:37 ` Steven Rostedt
2021-10-09 3:20 ` Andrii Nakryiko
2021-10-09 3:28 ` Steven Rostedt
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=20211006185619.364369-1-fallentree@fb.com \
--to=fallentree@fb.com \
--cc=andrii@kernel.org \
--cc=bpf@vger.kernel.org \
--cc=sunyucong@gmail.com \
/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.