diff mbox series

[mptcp-next] Squash to: mptcp: Retransmit DATA_FIN

Message ID 20210422011251.299480-1-mathew.j.martineau@linux.intel.com
State Accepted, archived
Commit 6d3e808050713c815623103093f5c5ea579f464e
Delegated to: Matthieu Baerts
Headers show
Series [mptcp-next] Squash to: mptcp: Retransmit DATA_FIN | expand

Commit Message

Mat Martineau April 22, 2021, 1:12 a.m. UTC
Fix timer logic in __mptcp_clean_una(). Only look at DATA_FIN enable
when snd_una and snd_nxt match to avoid bad calls to mptcp_reset_timer().

Thank you Paolo for adding the WARN_ON() to mptcp_reset_timer()!

Signed-off-by: Mat Martineau <mathew.j.martineau@linux.intel.com>
---
 net/mptcp/protocol.c | 5 ++---
 1 file changed, 2 insertions(+), 3 deletions(-)

Comments

Matthieu Baerts April 22, 2021, 8:26 a.m. UTC | #1
Hi Mat,

On 22/04/2021 03:12, Mat Martineau wrote:
> Fix timer logic in __mptcp_clean_una(). Only look at DATA_FIN enable
> when snd_una and snd_nxt match to avoid bad calls to mptcp_reset_timer().
> 
> Thank you Paolo for adding the WARN_ON() to mptcp_reset_timer()!

Thank you for the squash-to patch!

Now in our tree:

- 6d3e80805071: "squashed" in "mptcp: Retransmit DATA_FIN"
- Results: fb56846176f2..b48a833e40ba

Builds and tests are now in progress:

https://cirrus-ci.com/github/multipath-tcp/mptcp_net-next/export/20210422T082529
https://github.com/multipath-tcp/mptcp_net-next/actions/workflows/build-validation.yml?query=branch:export/20210422T082529

Cheers,
Matt
diff mbox series

Patch

diff --git a/net/mptcp/protocol.c b/net/mptcp/protocol.c
index 661873b373e3..6cbddfc18158 100644
--- a/net/mptcp/protocol.c
+++ b/net/mptcp/protocol.c
@@ -1069,9 +1069,8 @@  static void __mptcp_clean_una(struct sock *sk)
 		}
 	}
 
-	if (snd_una == READ_ONCE(msk->snd_nxt) &&
-	    !mptcp_data_fin_enabled(msk)) {
-		if (msk->timer_ival)
+	if (snd_una == READ_ONCE(msk->snd_nxt)) {
+		if (msk->timer_ival && !mptcp_data_fin_enabled(msk))
 			mptcp_stop_timer(sk);
 	} else {
 		mptcp_reset_timer(sk);