From: Kuniyuki Iwashima Date: Fri, 29 May 2026 19:18:02 +0000 (+0000) Subject: af_unix: Remove sock->state assignment. X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=ed9ea881746b4b80a5e3279159c07855275990e0;p=thirdparty%2Fkernel%2Flinux.git af_unix: Remove sock->state assignment. Both struct socket and struct sock have a variable to manage its state, sock->state and sk->sk_state. When both are used, the former typically manages syscall state and the latter manages the actual connection state. AF_UNIX only uses sk->sk_state. Let's remove unnecessary assignemnts for sock->state. Signed-off-by: Kuniyuki Iwashima Link: https://patch.msgid.link/20260529191829.3864438-1-kuniyu@google.com Signed-off-by: Jakub Kicinski --- diff --git a/net/unix/af_unix.c b/net/unix/af_unix.c index dc71ed79be4aa..628191bcb48fa 100644 --- a/net/unix/af_unix.c +++ b/net/unix/af_unix.c @@ -1142,8 +1142,6 @@ static int unix_create(struct net *net, struct socket *sock, int protocol, if (protocol && protocol != PF_UNIX) return -EPROTONOSUPPORT; - sock->state = SS_UNCONNECTED; - switch (sock->type) { case SOCK_STREAM: set_bit(SOCK_CUSTOM_SOCKOPT, &sock->flags); @@ -1775,7 +1773,6 @@ restart: /* Set credentials */ copy_peercred(sk, other); - sock->state = SS_CONNECTED; WRITE_ONCE(sk->sk_state, TCP_ESTABLISHED); sock_hold(newsk); @@ -1831,8 +1828,7 @@ static int unix_socketpair(struct socket *socka, struct socket *sockb) ska->sk_state = TCP_ESTABLISHED; skb->sk_state = TCP_ESTABLISHED; - socka->state = SS_CONNECTED; - sockb->state = SS_CONNECTED; + return 0; } @@ -1874,7 +1870,6 @@ static int unix_accept(struct socket *sock, struct socket *newsock, /* attach accepted sock to socket */ unix_state_lock(tsk); unix_update_edges(unix_sk(tsk)); - newsock->state = SS_CONNECTED; sock_graft(tsk, newsock); unix_state_unlock(tsk); return 0;