The branch main has been updated by glebius: URL: https://cgit.FreeBSD.org/src/commit/?id=9ef38a01aea87afa6a49fc90411cf8de5ac73b28
commit 9ef38a01aea87afa6a49fc90411cf8de5ac73b28 Author: Gleb Smirnoff <gleb...@freebsd.org> AuthorDate: 2025-02-05 22:24:27 +0000 Commit: Gleb Smirnoff <gleb...@freebsd.org> CommitDate: 2025-02-05 22:24:27 +0000 unix: remove always true check from uipc_attach This is pr_attach method, it is always called on a newborn socket. The condition was always true at least since 6d32873c2930. --- sys/kern/uipc_usrreq.c | 52 ++++++++++++++++++++++++-------------------------- 1 file changed, 25 insertions(+), 27 deletions(-) diff --git a/sys/kern/uipc_usrreq.c b/sys/kern/uipc_usrreq.c index c1f1c07da268..a67e105a1447 100644 --- a/sys/kern/uipc_usrreq.c +++ b/sys/kern/uipc_usrreq.c @@ -445,37 +445,35 @@ uipc_attach(struct socket *so, int proto, struct thread *td) bool locked; KASSERT(so->so_pcb == NULL, ("uipc_attach: so_pcb != NULL")); - if (so->so_snd.sb_hiwat == 0 || so->so_rcv.sb_hiwat == 0) { - switch (so->so_type) { - case SOCK_STREAM: - sendspace = unpst_sendspace; - recvspace = unpst_recvspace; - break; + switch (so->so_type) { + case SOCK_STREAM: + sendspace = unpst_sendspace; + recvspace = unpst_recvspace; + break; - case SOCK_DGRAM: - STAILQ_INIT(&so->so_rcv.uxdg_mb); - STAILQ_INIT(&so->so_snd.uxdg_mb); - TAILQ_INIT(&so->so_rcv.uxdg_conns); - /* - * Since send buffer is either bypassed or is a part - * of one-to-many receive buffer, we assign both space - * limits to unpdg_recvspace. - */ - sendspace = recvspace = unpdg_recvspace; - break; + case SOCK_DGRAM: + STAILQ_INIT(&so->so_rcv.uxdg_mb); + STAILQ_INIT(&so->so_snd.uxdg_mb); + TAILQ_INIT(&so->so_rcv.uxdg_conns); + /* + * Since send buffer is either bypassed or is a part + * of one-to-many receive buffer, we assign both space + * limits to unpdg_recvspace. + */ + sendspace = recvspace = unpdg_recvspace; + break; - case SOCK_SEQPACKET: - sendspace = unpsp_sendspace; - recvspace = unpsp_recvspace; - break; + case SOCK_SEQPACKET: + sendspace = unpsp_sendspace; + recvspace = unpsp_recvspace; + break; - default: - panic("uipc_attach"); - } - error = soreserve(so, sendspace, recvspace); - if (error) - return (error); + default: + panic("uipc_attach"); } + error = soreserve(so, sendspace, recvspace); + if (error) + return (error); unp = uma_zalloc(unp_zone, M_NOWAIT | M_ZERO); if (unp == NULL) return (ENOBUFS);