On Fri, May 7, 2021 at 1:18 AM Jakub Sitnicki <jakub@xxxxxxxxxxxxxx> wrote: > > On Mon, Apr 26, 2021 at 04:49 AM CEST, Cong Wang wrote: > > diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c > > index 8968ed44a89f..c4afc5fbe137 100644 > > --- a/net/unix/af_unix.c > > +++ b/net/unix/af_unix.c > > @@ -1206,6 +1206,8 @@ static int unix_dgram_connect(struct socket *sock, struct sockaddr *addr, > > unix_peer(sk) = other; > > unix_state_double_unlock(sk, other); > > } > > + > > + sk->sk_state = other->sk_state = TCP_ESTABLISHED; > > `other` can be NULL. In such case we're back to UNCONNECTED state. Right, we also need to move the sk_state back to TCP_CLOSE after disconnecting. Thanks.