* [PATCH mptcp-next] Squash to "selftests/bpf: Add bpf_rr scheduler"
@ 2022-10-09 15:45 Geliang Tang
2022-10-09 17:24 ` Squash to "selftests/bpf: Add bpf_rr scheduler": Tests Results MPTCP CI
2022-10-10 11:18 ` [PATCH mptcp-next] Squash to "selftests/bpf: Add bpf_rr scheduler" Geliang Tang
0 siblings, 2 replies; 3+ messages in thread
From: Geliang Tang @ 2022-10-09 15:45 UTC (permalink / raw)
To: mptcp; +Cc: Geliang Tang
Use last_snd instead of msk->last_snd, then last_snd of mptcp_sock could
be removed.
Signed-off-by: Geliang Tang <geliang.tang@suse.com>
---
tools/testing/selftests/bpf/bpf_tcp_helpers.h | 1 -
tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c | 7 +++++--
2 files changed, 5 insertions(+), 3 deletions(-)
diff --git a/tools/testing/selftests/bpf/bpf_tcp_helpers.h b/tools/testing/selftests/bpf/bpf_tcp_helpers.h
index c7d4a9a69cfc..c8792e6f125a 100644
--- a/tools/testing/selftests/bpf/bpf_tcp_helpers.h
+++ b/tools/testing/selftests/bpf/bpf_tcp_helpers.h
@@ -257,7 +257,6 @@ struct mptcp_sched_ops {
struct mptcp_sock {
struct inet_connection_sock sk;
- struct sock *last_snd;
__u32 token;
struct sock *first;
char ca_name[TCP_CA_NAME_MAX];
diff --git a/tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c b/tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c
index ce4e98f83e43..65d4f7f41bc2 100644
--- a/tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c
+++ b/tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c
@@ -5,10 +5,12 @@
#include "bpf_tcp_helpers.h"
char _license[] SEC("license") = "GPL";
+struct sock *last_snd = NULL;
SEC("struct_ops/mptcp_sched_rr_init")
void BPF_PROG(mptcp_sched_rr_init, const struct mptcp_sock *msk)
{
+ last_snd = msk->first;
}
SEC("struct_ops/mptcp_sched_rr_release")
@@ -22,10 +24,10 @@ void BPF_STRUCT_OPS(bpf_rr_get_subflow, const struct mptcp_sock *msk,
int nr = 0;
for (int i = 0; i < MPTCP_SUBFLOWS_MAX; i++) {
- if (!msk->last_snd || !data->contexts[i])
+ if (!last_snd || !data->contexts[i])
break;
- if (data->contexts[i]->tcp_sock == msk->last_snd) {
+ if (data->contexts[i]->tcp_sock == last_snd) {
if (i + 1 == MPTCP_SUBFLOWS_MAX || !data->contexts[i + 1])
break;
@@ -35,6 +37,7 @@ void BPF_STRUCT_OPS(bpf_rr_get_subflow, const struct mptcp_sock *msk,
}
mptcp_subflow_set_scheduled(data->contexts[nr], true);
+ last_snd = data->contexts[nr]->tcp_sock;
}
SEC(".struct_ops")
--
2.35.3
^ permalink raw reply related [flat|nested] 3+ messages in thread* Re: Squash to "selftests/bpf: Add bpf_rr scheduler": Tests Results
2022-10-09 15:45 [PATCH mptcp-next] Squash to "selftests/bpf: Add bpf_rr scheduler" Geliang Tang
@ 2022-10-09 17:24 ` MPTCP CI
2022-10-10 11:18 ` [PATCH mptcp-next] Squash to "selftests/bpf: Add bpf_rr scheduler" Geliang Tang
1 sibling, 0 replies; 3+ messages in thread
From: MPTCP CI @ 2022-10-09 17:24 UTC (permalink / raw)
To: Geliang Tang; +Cc: mptcp
Hi Geliang,
Thank you for your modifications, that's great!
Our CI did some validations and here is its report:
- KVM Validation: normal:
- Success! ✅:
- Task: https://cirrus-ci.com/task/6426348104187904
- Summary: https://api.cirrus-ci.com/v1/artifact/task/6426348104187904/summary/summary.txt
- KVM Validation: debug:
- Success! ✅:
- Task: https://cirrus-ci.com/task/5018973220634624
- Summary: https://api.cirrus-ci.com/v1/artifact/task/5018973220634624/summary/summary.txt
Initiator: Patchew Applier
Commits: https://github.com/multipath-tcp/mptcp_net-next/commits/76b10c873f3d
If there are some issues, you can reproduce them using the same environment as
the one used by the CI thanks to a docker image, e.g.:
$ cd [kernel source code]
$ docker run -v "${PWD}:${PWD}:rw" -w "${PWD}" --privileged --rm -it \
--pull always mptcp/mptcp-upstream-virtme-docker:latest \
auto-debug
For more details:
https://github.com/multipath-tcp/mptcp-upstream-virtme-docker
Please note that despite all the efforts that have been already done to have a
stable tests suite when executed on a public CI like here, it is possible some
reported issues are not due to your modifications. Still, do not hesitate to
help us improve that ;-)
Cheers,
MPTCP GH Action bot
Bot operated by Matthieu Baerts (Tessares)
^ permalink raw reply [flat|nested] 3+ messages in thread* Re: [PATCH mptcp-next] Squash to "selftests/bpf: Add bpf_rr scheduler"
2022-10-09 15:45 [PATCH mptcp-next] Squash to "selftests/bpf: Add bpf_rr scheduler" Geliang Tang
2022-10-09 17:24 ` Squash to "selftests/bpf: Add bpf_rr scheduler": Tests Results MPTCP CI
@ 2022-10-10 11:18 ` Geliang Tang
1 sibling, 0 replies; 3+ messages in thread
From: Geliang Tang @ 2022-10-10 11:18 UTC (permalink / raw)
To: mptcp
On Sun, Oct 09, 2022 at 11:45:31PM +0800, Geliang Tang wrote:
> Use last_snd instead of msk->last_snd, then last_snd of mptcp_sock could
> be removed.
>
> Signed-off-by: Geliang Tang <geliang.tang@suse.com>
> ---
> tools/testing/selftests/bpf/bpf_tcp_helpers.h | 1 -
> tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c | 7 +++++--
> 2 files changed, 5 insertions(+), 3 deletions(-)
>
> diff --git a/tools/testing/selftests/bpf/bpf_tcp_helpers.h b/tools/testing/selftests/bpf/bpf_tcp_helpers.h
> index c7d4a9a69cfc..c8792e6f125a 100644
> --- a/tools/testing/selftests/bpf/bpf_tcp_helpers.h
> +++ b/tools/testing/selftests/bpf/bpf_tcp_helpers.h
> @@ -257,7 +257,6 @@ struct mptcp_sched_ops {
> struct mptcp_sock {
> struct inet_connection_sock sk;
>
> - struct sock *last_snd;
> __u32 token;
> struct sock *first;
> char ca_name[TCP_CA_NAME_MAX];
> diff --git a/tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c b/tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c
> index ce4e98f83e43..65d4f7f41bc2 100644
> --- a/tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c
> +++ b/tools/testing/selftests/bpf/progs/mptcp_bpf_rr.c
> @@ -5,10 +5,12 @@
> #include "bpf_tcp_helpers.h"
>
> char _license[] SEC("license") = "GPL";
> +struct sock *last_snd = NULL;
>
> SEC("struct_ops/mptcp_sched_rr_init")
> void BPF_PROG(mptcp_sched_rr_init, const struct mptcp_sock *msk)
> {
> + last_snd = msk->first;
This line should be dropped. Will update in v6.
-Geliang
> }
>
> SEC("struct_ops/mptcp_sched_rr_release")
> @@ -22,10 +24,10 @@ void BPF_STRUCT_OPS(bpf_rr_get_subflow, const struct mptcp_sock *msk,
> int nr = 0;
>
> for (int i = 0; i < MPTCP_SUBFLOWS_MAX; i++) {
> - if (!msk->last_snd || !data->contexts[i])
> + if (!last_snd || !data->contexts[i])
> break;
>
> - if (data->contexts[i]->tcp_sock == msk->last_snd) {
> + if (data->contexts[i]->tcp_sock == last_snd) {
> if (i + 1 == MPTCP_SUBFLOWS_MAX || !data->contexts[i + 1])
> break;
>
> @@ -35,6 +37,7 @@ void BPF_STRUCT_OPS(bpf_rr_get_subflow, const struct mptcp_sock *msk,
> }
>
> mptcp_subflow_set_scheduled(data->contexts[nr], true);
> + last_snd = data->contexts[nr]->tcp_sock;
> }
>
> SEC(".struct_ops")
> --
> 2.35.3
>
^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2022-10-10 11:18 UTC | newest]
Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-10-09 15:45 [PATCH mptcp-next] Squash to "selftests/bpf: Add bpf_rr scheduler" Geliang Tang
2022-10-09 17:24 ` Squash to "selftests/bpf: Add bpf_rr scheduler": Tests Results MPTCP CI
2022-10-10 11:18 ` [PATCH mptcp-next] Squash to "selftests/bpf: Add bpf_rr scheduler" Geliang Tang
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.