From: Geliang Tang <geliang@kernel.org>
To: mptcp@lists.linux.dev
Cc: Geliang Tang <tanggeliang@kylinos.cn>
Subject: [PATCH mptcp-next v10 0/9] add mptcp_subflow bpf_iter
Date: Wed, 16 Oct 2024 15:33:07 +0800 [thread overview]
Message-ID: <cover.1729063444.git.tanggeliang@kylinos.cn> (raw)
From: Geliang Tang <tanggeliang@kylinos.cn>
v10:
- rename bpf prog to "mptcp_bpf_iters.c" and change it as
"cgroup/getsockopt" type. Since another bpf_iter "mptcp_address",
to traverse all address entries on userspace_pm_local_addr_list of
an MPTCP socket for implementing the MPTCP BPF path manager, will be
added in the next set. The test program for "mptcp_address" bpf_iter
will be added into this "mptcp_bpf_iters.c" file too and also defined
as "cgroup/getsockopt" type.
- change all bpf kfunc static as Matt suggested.
- drop mptcp_subflow_active and mptcp_subflow_set_scheduled from the
test program as Matt suggested.
v9:
- rename bpf prog to "mptcp_bpf_iters_subflow.c"
- drop the helper bpf_mptcp_sk(), it's not used in this test.
v8:
- Make the test prog in patch 4 more like a bpf packet scheduler.
- Export more mptcp helpers into BPF in patch 1.
v7:
- As Martin recently replied, mptcp_stubflow bpf_iter can still be
used in tracing. So go back to the tracing selftest.
v6:
- add KF_TRUSTED_ARGS flag in patch 2 (Andrii, Martin), then acquire
and release helpers (patch 3) are needed to be implemented.
- test mptcp_subflow bpf_iter in "cgroup/getsockopt" (patch 5),
instead of testing them in "tracing" (Martin).
v5:
- update patch 1 as Andrii suggested: if msk is NULL, initialize
kit->msk to NULL in _new() and check it in _next().
v4:
- squash patch 1/5 and 3/5 in v3 together as Matt suggested.
- a new squash-to patch to drop mptcp_subflow_active declaration in
bpf_burst.
v3:
- drop bpf_iter__mptcp_subflow, __diag_push, __diag_pop and
__diag_ignore_all
- drop declarations for bpf kfuncs
v2:
- update patch 1 as Martin and Andrii suggested.
- fix warnings and errors reported by MPTCP CI.
This patch set adds a mptcp_subflow type bpf_iter, and self tests.
Geliang Tang (9):
bpf: Register mptcp common kfunc set
bpf: Add mptcp_subflow bpf_iter
bpf: Acquire and release mptcp socket
selftests/bpf: Add mptcp_subflow bpf_iter test prog
selftests/bpf: More endpoints for endpoint_init
selftests/bpf: Add mptcp_subflow bpf_iter subtest
Squash to "selftests/bpf: Add bpf scheduler test"
Revert "bpf: Export more bpf_burst related functions"
Squash to "bpf: Add bpf_mptcp_sched_kfunc_set"
net/mptcp/bpf.c | 93 ++++++++++++-
net/mptcp/protocol.h | 1 -
.../testing/selftests/bpf/bpf_experimental.h | 7 +
.../testing/selftests/bpf/prog_tests/mptcp.c | 126 +++++++++++++++++-
tools/testing/selftests/bpf/progs/mptcp_bpf.h | 8 ++
.../selftests/bpf/progs/mptcp_bpf_iters.c | 60 +++++++++
6 files changed, 283 insertions(+), 12 deletions(-)
create mode 100644 tools/testing/selftests/bpf/progs/mptcp_bpf_iters.c
--
2.43.0
next reply other threads:[~2024-10-16 7:33 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-16 7:33 Geliang Tang [this message]
2024-10-16 7:33 ` [PATCH mptcp-next v10 1/9] bpf: Register mptcp common kfunc set Geliang Tang
2024-10-16 7:33 ` [PATCH mptcp-next v10 2/9] bpf: Add mptcp_subflow bpf_iter Geliang Tang
2024-10-16 7:33 ` [PATCH mptcp-next v10 3/9] bpf: Acquire and release mptcp socket Geliang Tang
2024-10-16 7:33 ` [PATCH mptcp-next v10 4/9] selftests/bpf: Add mptcp_subflow bpf_iter test prog Geliang Tang
2024-10-16 7:33 ` [PATCH mptcp-next v10 5/9] selftests/bpf: More endpoints for endpoint_init Geliang Tang
2024-10-16 7:33 ` [PATCH mptcp-next v10 6/9] selftests/bpf: Add mptcp_subflow bpf_iter subtest Geliang Tang
2024-10-16 7:33 ` [PATCH mptcp-next v10 7/9] Squash to "selftests/bpf: Add bpf scheduler test" Geliang Tang
2024-10-16 7:33 ` [PATCH mptcp-next v10 8/9] Revert "bpf: Export more bpf_burst related functions" Geliang Tang
2024-10-16 7:33 ` [PATCH mptcp-next v10 9/9] Squash to "bpf: Add bpf_mptcp_sched_kfunc_set" Geliang Tang
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=cover.1729063444.git.tanggeliang@kylinos.cn \
--to=geliang@kernel.org \
--cc=mptcp@lists.linux.dev \
--cc=tanggeliang@kylinos.cn \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox