Lines Matching refs:mq

1652 mq_init(struct mbuf_queue *mq, u_int maxlen, int ipl)
1654 mtx_init(&mq->mq_mtx, ipl);
1655 ml_init(&mq->mq_list);
1656 mq->mq_maxlen = maxlen;
1660 mq_push(struct mbuf_queue *mq, struct mbuf *m)
1664 mtx_enter(&mq->mq_mtx);
1665 if (mq_len(mq) >= mq->mq_maxlen) {
1666 mq->mq_drops++;
1667 dropped = ml_dequeue(&mq->mq_list);
1669 ml_enqueue(&mq->mq_list, m);
1670 mtx_leave(&mq->mq_mtx);
1679 mq_enqueue(struct mbuf_queue *mq, struct mbuf *m)
1683 mtx_enter(&mq->mq_mtx);
1684 if (mq_len(mq) < mq->mq_maxlen)
1685 ml_enqueue(&mq->mq_list, m);
1687 mq->mq_drops++;
1690 mtx_leave(&mq->mq_mtx);
1699 mq_dequeue(struct mbuf_queue *mq)
1703 mtx_enter(&mq->mq_mtx);
1704 m = ml_dequeue(&mq->mq_list);
1705 mtx_leave(&mq->mq_mtx);
1711 mq_enlist(struct mbuf_queue *mq, struct mbuf_list *ml)
1716 mtx_enter(&mq->mq_mtx);
1717 if (mq_len(mq) < mq->mq_maxlen)
1718 ml_enlist(&mq->mq_list, ml);
1721 mq->mq_drops += dropped;
1723 mtx_leave(&mq->mq_mtx);
1734 mq_delist(struct mbuf_queue *mq, struct mbuf_list *ml)
1736 mtx_enter(&mq->mq_mtx);
1737 *ml = mq->mq_list;
1738 ml_init(&mq->mq_list);
1739 mtx_leave(&mq->mq_mtx);
1743 mq_dechain(struct mbuf_queue *mq)
1747 mtx_enter(&mq->mq_mtx);
1748 m0 = ml_dechain(&mq->mq_list);
1749 mtx_leave(&mq->mq_mtx);
1755 mq_purge(struct mbuf_queue *mq)
1759 mq_delist(mq, &ml);
1765 mq_hdatalen(struct mbuf_queue *mq)
1769 mtx_enter(&mq->mq_mtx);
1770 hdatalen = ml_hdatalen(&mq->mq_list);
1771 mtx_leave(&mq->mq_mtx);
1777 mq_set_maxlen(struct mbuf_queue *mq, u_int maxlen)
1779 mtx_enter(&mq->mq_mtx);
1780 mq->mq_maxlen = maxlen;
1781 mtx_leave(&mq->mq_mtx);
1786 void *newp, size_t newlen, struct mbuf_queue *mq)
1797 return (sysctl_rdint(oldp, oldlenp, newp, mq_len(mq)));
1799 maxlen = mq->mq_maxlen;
1802 mq_set_maxlen(mq, maxlen);
1805 return (sysctl_rdint(oldp, oldlenp, newp, mq_drops(mq)));