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

Function iflib_txsd_free

freebsd/net/iflib.c:1819–1842  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1817}
1818
1819static void
1820iflib_txsd_free(if_ctx_t ctx, iflib_txq_t txq, int i)
1821{
1822 struct mbuf **mp;
1823
1824 mp = &txq->ift_sds.ifsd_m[i];
1825 if (*mp == NULL)
1826 return;
1827
1828 if (txq->ift_sds.ifsd_map != NULL) {
1829 bus_dmamap_sync(txq->ift_buf_tag,
1830 txq->ift_sds.ifsd_map[i], BUS_DMASYNC_POSTWRITE);
1831 bus_dmamap_unload(txq->ift_buf_tag, txq->ift_sds.ifsd_map[i]);
1832 }
1833 if (txq->ift_sds.ifsd_tso_map != NULL) {
1834 bus_dmamap_sync(txq->ift_tso_buf_tag,
1835 txq->ift_sds.ifsd_tso_map[i], BUS_DMASYNC_POSTWRITE);
1836 bus_dmamap_unload(txq->ift_tso_buf_tag,
1837 txq->ift_sds.ifsd_tso_map[i]);
1838 }
1839 m_freem(*mp);
1840 DBG_COUNTER_INC(tx_frees);
1841 *mp = NULL;
1842}
1843
1844static int
1845iflib_txq_setup(iflib_txq_t txq)

Callers 1

iflib_stopFunction · 0.85

Calls 3

bus_dmamap_syncFunction · 0.50
bus_dmamap_unloadFunction · 0.50
m_freemFunction · 0.50

Tested by

no test coverage detected