diff --git a/net/mptcp/protocol.h b/net/mptcp/protocol.h index 3887856cbdc41..27f3fedb9c366 100644 --- a/net/mptcp/protocol.h +++ b/net/mptcp/protocol.h @@ -1118,7 +1118,8 @@ static inline bool subflow_simultaneous_connect(struct sock *sk) { struct mptcp_subflow_context *subflow = mptcp_subflow_ctx(sk); - return (1 << sk->sk_state) & (TCPF_ESTABLISHED | TCPF_FIN_WAIT1) && + return (1 << sk->sk_state) & + (TCPF_ESTABLISHED | TCPF_FIN_WAIT1 | TCPF_FIN_WAIT2 | TCPF_CLOSING) && is_active_ssk(subflow) && !subflow->conn_finished; }