diff options
author | Paolo Abeni <pabeni@redhat.com> | 2020-03-28 00:48:44 +0300 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2020-03-30 08:14:48 +0300 |
commit | b51f9b80c032e1af1e3e7e8dc733d2d49831e982 (patch) | |
tree | 0a7b141e21707fd6a0600cf2f0d37baffdf0a876 /net/mptcp/options.c | |
parent | 18b683bff89d46ace55f12d00c0440d44d6160c4 (diff) | |
download | linux-b51f9b80c032e1af1e3e7e8dc733d2d49831e982.tar.xz |
mptcp: introduce MPTCP retransmission timer
The timer will be used to schedule retransmission. It's
frequency is based on the current subflow RTO estimation and
is reset on every una_seq update
The timer is clearer for good by __mptcp_clear_xmit()
Also clean MPTCP rtx queue before each transmission.
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mptcp/options.c')
-rw-r--r-- | net/mptcp/options.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/net/mptcp/options.c b/net/mptcp/options.c index b0ff8ad702a3..bd220ee4aac9 100644 --- a/net/mptcp/options.c +++ b/net/mptcp/options.c @@ -779,8 +779,10 @@ static void update_una(struct mptcp_sock *msk, snd_una = old_snd_una; old_snd_una = atomic64_cmpxchg(&msk->snd_una, snd_una, new_snd_una); - if (old_snd_una == snd_una) + if (old_snd_una == snd_una) { + mptcp_data_acked((struct sock *)msk); break; + } } } |