MCPcopy Create free account
hub / github.com/F-Stack/f-stack / iflib_altq_if_start

Function iflib_altq_if_start

freebsd/net/iflib.c:4174–4187  ·  view source on GitHub ↗

* The overall approach to integrating iflib with ALTQ is to continue to use * the iflib mp_ring machinery between the ALTQ queue(s) and the hardware * ring. Technically, when using ALTQ, queueing to an intermediate mp_ring * is redundant/unnecessary, but doing so minimizes the amount of * ALTQ-specific code required in iflib. It is assumed that the overhead of * redundantly queueing to an i

Source from the content-addressed store, hash-verified

4172 *
4173 */
4174static void
4175iflib_altq_if_start(if_t ifp)
4176{
4177 struct ifaltq *ifq = &ifp->if_snd;
4178 struct mbuf *m;
4179
4180 IFQ_LOCK(ifq);
4181 IFQ_DEQUEUE_NOLOCK(ifq, m);
4182 while (m != NULL) {
4183 iflib_if_transmit(ifp, m);
4184 IFQ_DEQUEUE_NOLOCK(ifq, m);
4185 }
4186 IFQ_UNLOCK(ifq);
4187}
4188
4189static int
4190iflib_altq_if_transmit(if_t ifp, struct mbuf *m)

Callers 2

_task_fn_txFunction · 0.85
iflib_altq_if_transmitFunction · 0.85

Calls 1

iflib_if_transmitFunction · 0.85

Tested by

no test coverage detected