* [PATCH net-next] mptcp: drop all sub-options except ADD_ADDR when the echo bit is set
@ 2021-03-26 12:28 Davide Caratti
2021-03-26 13:57 ` Davide Caratti
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Davide Caratti @ 2021-03-26 12:28 UTC (permalink / raw)
To: mptcp; +Cc: Matthieu Baerts
Current Linux carries echo-ed ADD_ADDR over pure TCP ACKs, so there is no
need to add a DSS element that would fit only ADD_ADDR with IPv4 address.
Drop the DSS from echo-ed ADD_ADDR, regardless of the IP version.
Signed-off-by: Davide Caratti <dcaratti@redhat.com>
---
net/mptcp/options.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/net/mptcp/options.c b/net/mptcp/options.c
index c7eb61d0564c..d51c3ad54d9a 100644
--- a/net/mptcp/options.c
+++ b/net/mptcp/options.c
@@ -624,7 +624,8 @@ static bool mptcp_established_options_add_addr(struct sock *sk, struct sk_buff *
int len;
if ((mptcp_pm_should_add_signal_ipv6(msk) ||
- mptcp_pm_should_add_signal_port(msk)) &&
+ mptcp_pm_should_add_signal_port(msk) ||
+ mptcp_pm_should_add_signal_echo(msk)) &&
skb && skb_is_tcp_pure_ack(skb)) {
pr_debug("drop other suboptions");
opts->suboptions = 0;
--
2.30.2
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] mptcp: drop all sub-options except ADD_ADDR when the echo bit is set
2021-03-26 12:28 [PATCH net-next] mptcp: drop all sub-options except ADD_ADDR when the echo bit is set Davide Caratti
@ 2021-03-26 13:57 ` Davide Caratti
2021-03-26 18:39 ` Mat Martineau
2021-03-30 13:43 ` Matthieu Baerts
2 siblings, 0 replies; 4+ messages in thread
From: Davide Caratti @ 2021-03-26 13:57 UTC (permalink / raw)
To: mptcp; +Cc: Matthieu Baerts
On Fri, 2021-03-26 at 13:28 +0100, Davide Caratti wrote:
> Current Linux carries echo-ed ADD_ADDR over pure TCP ACKs, so there is no
> need to add a DSS element that would fit only ADD_ADDR with IPv4 address.
> Drop the DSS from echo-ed ADD_ADDR, regardless of the IP version.
>
> Signed-off-by: Davide Caratti <dcaratti@redhat.com>
please note: testing this commit with current packetdrill will fail,
because the expected format of outbound echoed ADD_ADDR will fail.
In parallel with this "harmonization" of IPv4 / IPv6 echo-ed ADD_ADDRs
the kernel, I'm working on packetdrill to fix the support for IPv6 in
ADD_ADDR [1]. Non-echoed ADD_ADDRs are still "non-harmonized", so you
will notice the DSS sub-option on IPv4 and no other sub-option except
ADD_ADDR on IPv6.
So, server scripts using ADD_ADDR will still need 2 separate files for
IPv4 and IPv6, while it will be possible to run the same client script
on IPv4 and IPv6.
@matthieu, just writing few notes here as probably the CI you are
running will be "glitching" because of these changes. Sorry for the
inconvenience :]
--
davide
[1] https://github.com/multipath-tcp/packetdrill/pull/49
> ---
> net/mptcp/options.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/net/mptcp/options.c b/net/mptcp/options.c
> index c7eb61d0564c..d51c3ad54d9a 100644
> --- a/net/mptcp/options.c
> +++ b/net/mptcp/options.c
> @@ -624,7 +624,8 @@ static bool mptcp_established_options_add_addr(struct sock *sk, struct sk_buff *
> int len;
>
>
>
>
> if ((mptcp_pm_should_add_signal_ipv6(msk) ||
> - mptcp_pm_should_add_signal_port(msk)) &&
> + mptcp_pm_should_add_signal_port(msk) ||
> + mptcp_pm_should_add_signal_echo(msk)) &&
> skb && skb_is_tcp_pure_ack(skb)) {
> pr_debug("drop other suboptions");
> opts->suboptions = 0;
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] mptcp: drop all sub-options except ADD_ADDR when the echo bit is set
2021-03-26 12:28 [PATCH net-next] mptcp: drop all sub-options except ADD_ADDR when the echo bit is set Davide Caratti
2021-03-26 13:57 ` Davide Caratti
@ 2021-03-26 18:39 ` Mat Martineau
2021-03-30 13:43 ` Matthieu Baerts
2 siblings, 0 replies; 4+ messages in thread
From: Mat Martineau @ 2021-03-26 18:39 UTC (permalink / raw)
To: Davide Caratti; +Cc: mptcp, Matthieu Baerts, mptcp
On Fri, 26 Mar 2021, Davide Caratti wrote:
> Current Linux carries echo-ed ADD_ADDR over pure TCP ACKs, so there is no
> need to add a DSS element that would fit only ADD_ADDR with IPv4 address.
> Drop the DSS from echo-ed ADD_ADDR, regardless of the IP version.
>
> Signed-off-by: Davide Caratti <dcaratti@redhat.com>
> ---
> net/mptcp/options.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
Thanks Davide, looks good to me. This didn't land in patchwork without the
mptcp@lists.01.org cc, but we should have mptcp@lists.linux.dev routed in
to patchwork by Monday (Australia time).
Reviewed-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
>
> diff --git a/net/mptcp/options.c b/net/mptcp/options.c
> index c7eb61d0564c..d51c3ad54d9a 100644
> --- a/net/mptcp/options.c
> +++ b/net/mptcp/options.c
> @@ -624,7 +624,8 @@ static bool mptcp_established_options_add_addr(struct sock *sk, struct sk_buff *
> int len;
>
> if ((mptcp_pm_should_add_signal_ipv6(msk) ||
> - mptcp_pm_should_add_signal_port(msk)) &&
> + mptcp_pm_should_add_signal_port(msk) ||
> + mptcp_pm_should_add_signal_echo(msk)) &&
> skb && skb_is_tcp_pure_ack(skb)) {
> pr_debug("drop other suboptions");
> opts->suboptions = 0;
> --
> 2.30.2
--
Mat Martineau
Intel
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH net-next] mptcp: drop all sub-options except ADD_ADDR when the echo bit is set
2021-03-26 12:28 [PATCH net-next] mptcp: drop all sub-options except ADD_ADDR when the echo bit is set Davide Caratti
2021-03-26 13:57 ` Davide Caratti
2021-03-26 18:39 ` Mat Martineau
@ 2021-03-30 13:43 ` Matthieu Baerts
2 siblings, 0 replies; 4+ messages in thread
From: Matthieu Baerts @ 2021-03-30 13:43 UTC (permalink / raw)
To: Davide Caratti, Mat Martineau; +Cc: mptcp
Hi Davide, Mat
On 26/03/2021 13:28, Davide Caratti wrote:
> Current Linux carries echo-ed ADD_ADDR over pure TCP ACKs, so there is no
> need to add a DSS element that would fit only ADD_ADDR with IPv4 address.
> Drop the DSS from echo-ed ADD_ADDR, regardless of the IP version.
Thank you for the patch!
Now applied in our repo with Mat's RvB tag:
- aa44e0298e25: mptcp: drop all sub-options except ADD_ADDR when the
echo bit is set
- Results: 01e1b77c047c..ee61d54be9fd
Tests + export are in progress!
Cheers,
Matt
--
Tessares | Belgium | Hybrid Access Solutions
www.tessares.net
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2021-03-30 13:43 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-26 12:28 [PATCH net-next] mptcp: drop all sub-options except ADD_ADDR when the echo bit is set Davide Caratti
2021-03-26 13:57 ` Davide Caratti
2021-03-26 18:39 ` Mat Martineau
2021-03-30 13:43 ` Matthieu Baerts
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.