Lines Matching defs:so

230 	 * Add per pid entries before per proc name so we can find
287 struct socket *so;
295 so = (struct socket *)fp->f_fglob->fg_data;
296 if (so->so_proto->pr_domain->dom_family != AF_INET &&
297 so->so_proto->pr_domain->dom_family != AF_INET6)
299 socket_lock(so, 1);
301 error = so_set_traffic_class(so, tclass);
304 "(so=%p, fd=%d, tclass=%d) "
306 so, i, tclass, error);
310 socket_unlock(so, 1);
370 struct socket *so;
379 so = (struct socket *)fp->f_fglob->fg_data;
380 error = sock_setsockopt(so, SOL_SOCKET, SO_FLUSH, &tclass,
383 printf("%s: setsockopt(SO_FLUSH) (so=%p, fd=%d, "
384 "tclass=%d) failed %d\n", __func__, so, i, tclass,
482 so_set_tcdbg(struct socket *so, struct so_tcdbg *so_tcdbg)
486 if ((so->so_state & SS_PRIV) == 0)
489 socket_unlock(so, 0);
521 socket_lock(so, 0);
530 sogetopt_tcdbg(struct socket *so, struct sockopt *sopt)
544 socket_unlock(so, 0);
610 socket_lock(so, 0);
626 so_set_traffic_class(struct socket *so, int optval)
650 int oldval = so->so_traffic_class;
653 so->so_traffic_class = optval;
655 if ((INP_SOCKAF(so) == AF_INET ||
656 INP_SOCKAF(so) == AF_INET6) &&
657 INP_SOCKTYPE(so) == SOCK_STREAM) {
658 set_tcp_stream_priority(so);
661 so_set_lro(so, optval);
664 if ((INP_SOCKAF(so) == AF_INET ||
665 INP_SOCKAF(so) == AF_INET6) &&
673 inp_reset_fc_state(so->so_pcb);
675 SOTHROTTLELOG(("throttle[%d]: so %p [%d,%d] "
676 "opportunistic %s\n", so->last_pid,
677 so, INP_SOCKAF(so), INP_SOCKTYPE(so),
686 so_set_default_traffic_class(struct socket *so)
691 (INP_SOCKAF(so) == AF_INET || INP_SOCKAF(so) == AF_INET6)) {
695 so->so_traffic_class = (sotc != -1) ? sotc : SO_TC_BE;
699 so_set_opportunistic(struct socket *so, int optval)
701 return (so_set_traffic_class(so, (optval == 0) ?
706 so_get_opportunistic(struct socket *so)
708 return (so->so_traffic_class == SO_TC_BK_SYS);
764 so_recv_data_stat(struct socket *so, struct mbuf *m, size_t off)
771 so->so_tc_stats[sotc].rxpackets += 1;
772 so->so_tc_stats[sotc].rxbytes +=
777 set_tcp_stream_priority(struct socket *so)
779 struct tcpcb *tp = intotcpcb(sotoinpcb(so));
781 int recvbg = IS_TCP_RECV_BG(so);
790 if (soisthrottled(so) || IS_SO_TC_BACKGROUND(so->so_traffic_class)) {
793 tcp_set_foreground_cc(so);
796 tcp_set_background_cc(so);
801 tcp_clear_recv_bg(so);
803 tcp_set_recv_bg(so);
805 tcp_clear_recv_bg(so);
807 tcp_set_foreground_cc(so);
810 if (old_cc != tp->tcp_cc_index || recvbg != IS_TCP_RECV_BG(so)) {
811 SOTHROTTLELOG(("throttle[%d]: so %p [%d,%d] TCP %s send; "
812 "%s recv\n", so->last_pid, so, INP_SOCKAF(so),
813 INP_SOCKTYPE(so),
816 IS_TCP_RECV_BG(so) ? "background" : "foreground"));
826 set_packet_service_class(struct mbuf *m, struct socket *so,
830 struct inpcb *inp = sotoinpcb(so); /* in6pcb and inpcb are the same */
850 VERIFY(SO_VALID_TC(so->so_traffic_class));
851 msc = so_tc2msc(so->so_traffic_class);
859 if (soisthrottled(so) && !IS_MBUF_SC_BACKGROUND(msc))
881 if (!(sotcdb & SOTCDB_NO_PRIVILEGED) && soisprivilegedtraffic(so) &&
910 if ((so->so_type == SOCK_RAW &&
917 if ((so->so_type == SOCK_RAW &&
930 if (so->so_type == SOCK_STREAM) {
964 if (so->so_type == SOCK_STREAM)
965 set_tcp_stream_priority(so);
967 so_tc_update_stats(m, so, msc);
971 so_tc_update_stats(struct mbuf *m, struct socket *so, mbuf_svc_class_t msc)
983 so->so_tc_stats[mtc].txpackets += 1;
984 so->so_tc_stats[mtc].txbytes += m->m_pkthdr.len;
1079 so_set_lro(struct socket *so, int optval)
1084 so->so_flags |= SOF_USELRO;
1086 so->so_flags &= ~SOF_USELRO;