Lines Matching refs:mbuf
80 #include <sys/mbuf.h>
230 static int sodelayed_copy(struct socket *, struct uio *, struct mbuf **, int *);
1420 * otherwise by the mbuf chain "top" (which must be null
1421 * if uio is not). Data provided in mbuf chain must be small
1428 * MSG_HOLD: go thru most of sosend(), but just enqueue the mbuf
1430 * point at the mbuf chain being constructed and go from there.
1473 struct mbuf *top, struct mbuf *control, int flags)
1475 struct mbuf **mp;
1476 register struct mbuf *m, *freelist = NULL;
1575 * try to maintain a local cache of mbuf
1582 * mbuf lock... if we can't get any
1647 * Fall back to a single mbuf
1668 * headers in first mbuf.
1724 register struct mbuf *mb1;
1862 * followed by an optional mbuf or mbufs containing ancillary data,
1869 * The caller may receive the data as a single mbuf chain by supplying
1870 * an mbuf **mp0 for use in returning the chain. The uio is then used
1896 struct mbuf **mp0, struct mbuf **controlp, int *flagsp)
1898 register struct mbuf *m, **mp, *ml = NULL;
1901 struct mbuf *nextrecord;
1905 struct mbuf *free_list;
2002 *mp = (struct mbuf *)0;
2007 free_list = (struct mbuf *)0;
2149 struct mbuf *m0 = m;
2239 * in the first mbuf chain on the socket buffer. If MSG_PEEK, we
2244 struct mbuf *cm = NULL, *cmn;
2245 struct mbuf **cme = &cm;
2251 * lock, the mbuf chain might change. In order to preserve
2253 * first mbuf chain in one shot and link them separately
2309 * of the mbuf chain won't change.
2337 * We get here because m points to an mbuf following
2340 * to the head of the mbuf chain, and the nextrecord
2399 * Sockbuf must be consistent here (points to current mbuf,
2410 * mbuf and we're NOT in MSG_PEEK mode
2469 *mp = (struct mbuf *)0;
2648 m_freem_list((struct mbuf *)free_list);
2649 free_list = (struct mbuf *)0;
2672 m_freem_list((struct mbuf *)free_list);
2688 sodelayed_copy(struct socket *so, struct uio *uio, struct mbuf **free_list,
2692 struct mbuf *m;
2706 *free_list = (struct mbuf *)NULL;
3384 struct mbuf *m1;
3498 /* XXX; prepare mbuf for (__FreeBSD__ < 3) routines. */
3500 soopt_getm(struct sockopt *sopt, struct mbuf **mp)
3502 struct mbuf *m, *m_prev;
3548 /* XXX; copyin sopt data into mbuf chain for (__FreeBSD__ < 3) routines. */
3550 soopt_mcopyin(struct sockopt *sopt, struct mbuf *m)
3552 struct mbuf *m0 = m;
3579 /* XXX; copyout mbuf chain data into soopt for (__FreeBSD__ < 3) routines. */
3581 soopt_mcopyout(struct sockopt *sopt, struct mbuf *m)
3583 struct mbuf *m0 = m;