From: Paolo Abeni Date: Fri, 7 Jan 2022 00:20:14 +0000 (-0800) Subject: mptcp: keep snd_una updated for fallback socket X-Git-Tag: block-5.17-2022-01-21~91^2~35^2~12 X-Git-Url: https://git.kernel.dk/?a=commitdiff_plain;h=58cd405b83b388c75a4c24926e5d4aeae8d1eaf5;p=linux-block.git mptcp: keep snd_una updated for fallback socket After shutdown, for fallback MPTCP sockets, we always have write_seq == snd_una+1 The above will foul OUTQ ioctl(). Keep snd_una in sync with write_seq even after shutdown. Signed-off-by: Paolo Abeni Signed-off-by: Mat Martineau Signed-off-by: David S. Miller --- diff --git a/net/mptcp/protocol.c b/net/mptcp/protocol.c index df5a0cf431c1..f6fc0f0f66f0 100644 --- a/net/mptcp/protocol.c +++ b/net/mptcp/protocol.c @@ -2666,6 +2666,7 @@ static void __mptcp_check_send_data_fin(struct sock *sk) * state now */ if (__mptcp_check_fallback(msk)) { + WRITE_ONCE(msk->snd_una, msk->write_seq); if ((1 << sk->sk_state) & (TCPF_CLOSING | TCPF_LAST_ACK)) { inet_sk_state_store(sk, TCP_CLOSE); mptcp_close_wake_up(sk);