mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 17:47:41 +02:00
mptcp: fix retransmission loop when csum is enabled
Sashiko noted that retransmission with csum enabled can actually
transmit new data, but currently the relevant code does not update
accordingly snd_nxt.
The may cause incoming ack drop and an endless retransmission loop.
Address the issue incrementing snd_nxt as needed.
Fixes: 4e14867d5e ("mptcp: tune re-injections for csum enabled mode")
Cc: stable@vger.kernel.org
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Reviewed-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Signed-off-by: Matthieu Baerts (NGI0) <matttbe@kernel.org>
Link: https://patch.msgid.link/20260602-net-mptcp-misc-fixes-7-1-rc7-v2-2-856831229976@kernel.org
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
This commit is contained in:
parent
9d8d28738f
commit
d1918b36ed
|
|
@ -2869,6 +2869,10 @@ static void __mptcp_retrans(struct sock *sk)
|
|||
msk->bytes_retrans += len;
|
||||
dfrag->already_sent = max(dfrag->already_sent, len);
|
||||
|
||||
/* With csum enabled retransmission can send new data. */
|
||||
if (after64(dfrag->already_sent + dfrag->data_seq, msk->snd_nxt))
|
||||
WRITE_ONCE(msk->snd_nxt, dfrag->already_sent + dfrag->data_seq);
|
||||
|
||||
reset_timer:
|
||||
mptcp_check_and_set_pending(sk);
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user