Lines Matching refs:so2
1632 so_splice(struct socket *so, struct socket *so2, struct splice *splice) argument
1641 so2->so_proto->pr_protocol != IPPROTO_TCP)
1643 if (so->so_vnet != so2->so_vnet)
1649 KASSERT(so2->so_proto->pr_soreceive == soreceive_generic ||
1650 so2->so_proto->pr_soreceive == soreceive_stream,
1656 sp->dst = so2;
1679 SOCK_LOCK(so2);
1680 if (SOLISTENING(so2))
1682 else if ((so2->so_state & (SS_ISCONNECTED | SS_ISCONNECTING)) == 0)
1684 else if (so2->so_splice_back != NULL)
1687 SOCK_UNLOCK(so2);
1698 soref(so2);
1699 so2->so_splice_back = sp;
1700 SOCK_SENDBUF_LOCK(so2);
1701 so2->so_snd.sb_flags |= SB_SPLICED;
1703 SOCK_SENDBUF_UNLOCK(so2);
1704 SOCK_UNLOCK(so2);
1722 struct socket *so2; local
1748 so2 = sp->dst;
1749 SOCK_LOCK(so2);
1750 KASSERT(!SOLISTENING(so2), ("%s: so2 is listening", __func__));
1751 SOCK_SENDBUF_LOCK(so2);
1752 KASSERT((so2->so_snd.sb_flags & SB_SPLICED) != 0,
1754 KASSERT(so2->so_splice_back == sp,
1756 so2->so_snd.sb_flags &= ~SB_SPLICED;
1757 so2->so_splice_back = NULL;
1758 SOCK_SENDBUF_UNLOCK(so2);
1759 SOCK_UNLOCK(so2);
1798 sowwakeup(so2);
1799 sorele(so2);
2032 soconnect2(struct socket *so1, struct socket *so2) argument
2037 error = so1->so_proto->pr_connect2(so1, so2);
3970 struct socket *so2; local
3981 so2 = fp->f_data;
3983 error = so_splice(so, so2, &splice);