mbox series

[net,0/2] mptcp: fix 3rd ack rtx timer

Message ID cover.1637331462.git.pabeni@redhat.com (mailing list archive)
Headers show
Series mptcp: fix 3rd ack rtx timer | expand

Message

Paolo Abeni Nov. 19, 2021, 2:27 p.m. UTC
Eric noted that the MPTCP code do the wrong thing to schedule
the MPJ 3rd ack timer. He also provided a patch to address the
issues (patch 1/2).

To fix for good the MPJ 3rd ack retransmission timer, we additionally
need to set it after the current ack is transmitted (patch 2/2)

Note that the bug went unnotice so far because all the related
tests required some running data transfer, and that causes
MPTCP-level ack even on the opening MPJ subflow. We now have
explicit packet drill coverage for this code path.

Eric Dumazet (1):
  mptcp: fix delack timer

Paolo Abeni (1):
  mptcp: use delegate action to schedule 3rd ack retrans

 net/mptcp/options.c  | 32 ++++++++-------------------
 net/mptcp/protocol.c | 51 ++++++++++++++++++++++++++++++++++++--------
 net/mptcp/protocol.h | 17 ++++++++-------
 3 files changed, 60 insertions(+), 40 deletions(-)

Comments

David Miller Nov. 19, 2021, 3:46 p.m. UTC | #1
From: Paolo Abeni <pabeni@redhat.com>
Date: Fri, 19 Nov 2021 15:27:53 +0100

> Eric noted that the MPTCP code do the wrong thing to schedule
> the MPJ 3rd ack timer. He also provided a patch to address the
> issues (patch 1/2).
> 
> To fix for good the MPJ 3rd ack retransmission timer, we additionally
> need to set it after the current ack is transmitted (patch 2/2)
> 
> Note that the bug went unnotice so far because all the related
> tests required some running data transfer, and that causes
> MPTCP-level ack even on the opening MPJ subflow. We now have
> explicit packet drill coverage for this code path.

Acked-by: David S. Miller <davem@davemloft.net>
patchwork-bot+netdevbpf@kernel.org Nov. 20, 2021, 2:30 p.m. UTC | #2
Hello:

This series was applied to netdev/net.git (master)
by David S. Miller <davem@davemloft.net>:

On Fri, 19 Nov 2021 15:27:53 +0100 you wrote:
> Eric noted that the MPTCP code do the wrong thing to schedule
> the MPJ 3rd ack timer. He also provided a patch to address the
> issues (patch 1/2).
> 
> To fix for good the MPJ 3rd ack retransmission timer, we additionally
> need to set it after the current ack is transmitted (patch 2/2)
> 
> [...]

Here is the summary with links:
  - [net,1/2] mptcp: fix delack timer
    https://git.kernel.org/netdev/net/c/ee50e67ba0e1
  - [net,2/2] mptcp: use delegate action to schedule 3rd ack retrans
    https://git.kernel.org/netdev/net/c/bcd97734318d

You are awesome, thank you!