[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-Id: <20200429.124050.2123497422809828869.davem@davemloft.net>
Date: Wed, 29 Apr 2020 12:40:50 -0700 (PDT)
From: David Miller <davem@...emloft.net>
To: fw@...len.de
Cc: netdev@...r.kernel.org, pabeni@...hat.com
Subject: Re: [PATCH net] mptcp: replace mptcp_disconnect with a stub
From: Florian Westphal <fw@...len.de>
Date: Wed, 29 Apr 2020 20:43:20 +0200
> Paolo points out that mptcp_disconnect is bogus:
> "lock_sock(sk);
> looks suspicious (lock should be already held by the caller)
> And call to: tcp_disconnect(sk, flags); too, sk is not a tcp
> socket".
>
> ->disconnect() gets called from e.g. inet_stream_connect when
> one tries to disassociate a connected socket again (to re-connect
> without closing the socket first).
> MPTCP however uses mptcp_stream_connect, not inet_stream_connect,
> for the mptcp-socket connect call.
>
> inet_stream_connect only gets called indirectly, for the tcp socket,
> so any ->disconnect() calls end up calling tcp_disconnect for that
> tcp subflow sk.
>
> This also explains why syzkaller has not yet reported a problem
> here. So for now replace this with a stub that doesn't do anything.
>
> Closes: https://github.com/multipath-tcp/mptcp_net-next/issues/14
> Acked-by: Paolo Abeni <pabeni@...hat.com>
> Signed-off-by: Florian Westphal <fw@...len.de>
Applied.
Powered by blists - more mailing lists