All of lore.kernel.org
 help / color / mirror / Atom feed
* [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.