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

Function sfc_tx_qfini

dpdk/drivers/net/sfc/sfc_tx.c:261–293  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

259}
260
261void
262sfc_tx_qfini(struct sfc_adapter *sa, sfc_sw_index_t sw_index)
263{
264 struct sfc_adapter_shared * const sas = sfc_sa2shared(sa);
265 sfc_ethdev_qid_t ethdev_qid;
266 struct sfc_txq_info *txq_info;
267 struct sfc_txq *txq;
268
269 ethdev_qid = sfc_ethdev_tx_qid_by_txq_sw_index(sas, sw_index);
270
271 sfc_log_init(sa, "TxQ = %d (internal %u)", ethdev_qid, sw_index);
272
273 SFC_ASSERT(sw_index < sfc_sa2shared(sa)->txq_count);
274 if (ethdev_qid != SFC_ETHDEV_QID_INVALID)
275 sa->eth_dev->data->tx_queues[ethdev_qid] = NULL;
276
277 txq_info = &sfc_sa2shared(sa)->txq_info[sw_index];
278
279 SFC_ASSERT(txq_info->state == SFC_TXQ_INITIALIZED);
280
281 sa->priv.dp_tx->qdestroy(txq_info->dp);
282 txq_info->dp = NULL;
283
284 txq_info->state &= ~SFC_TXQ_INITIALIZED;
285 txq_info->entries = 0;
286
287 txq = &sa->txq_ctrl[sw_index];
288
289 sfc_dma_free(sa, &txq->mem);
290
291 sfc_ev_qfini(txq->evq);
292 txq->evq = NULL;
293}
294
295int
296sfc_tx_qinit_info(struct sfc_adapter *sa, sfc_sw_index_t sw_index)

Callers 4

sfc_repr_proxy_txq_initFunction · 0.85
sfc_repr_proxy_txq_finiFunction · 0.85
sfc_tx_fini_queuesFunction · 0.85
sfc_tx_queue_releaseFunction · 0.85

Calls 4

sfc_sa2sharedFunction · 0.85
sfc_dma_freeFunction · 0.85
sfc_ev_qfiniFunction · 0.85

Tested by

no test coverage detected