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

Function sfc_rx_qfini

dpdk/drivers/net/sfc/sfc_rx.c:1308–1338  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1306}
1307
1308void
1309sfc_rx_qfini(struct sfc_adapter *sa, sfc_sw_index_t sw_index)
1310{
1311 struct sfc_adapter_shared *sas = sfc_sa2shared(sa);
1312 sfc_ethdev_qid_t ethdev_qid;
1313 struct sfc_rxq_info *rxq_info;
1314 struct sfc_rxq *rxq;
1315
1316 SFC_ASSERT(sw_index < sfc_sa2shared(sa)->rxq_count);
1317 ethdev_qid = sfc_ethdev_rx_qid_by_rxq_sw_index(sas, sw_index);
1318
1319 if (ethdev_qid != SFC_ETHDEV_QID_INVALID)
1320 sa->eth_dev->data->rx_queues[ethdev_qid] = NULL;
1321
1322 rxq_info = &sfc_sa2shared(sa)->rxq_info[sw_index];
1323
1324 SFC_ASSERT(rxq_info->state == SFC_RXQ_INITIALIZED);
1325
1326 sa->priv.dp_rx->qdestroy(rxq_info->dp);
1327 rxq_info->dp = NULL;
1328
1329 rxq_info->state &= ~SFC_RXQ_INITIALIZED;
1330 rxq_info->entries = 0;
1331
1332 rxq = &sa->rxq_ctrl[sw_index];
1333
1334 sfc_dma_free(sa, &rxq->mem);
1335
1336 sfc_ev_qfini(rxq->evq);
1337 rxq->evq = NULL;
1338}
1339
1340/*
1341 * Mapping between RTE RSS hash functions and their EFX counterparts.

Callers 4

sfc_repr_proxy_rxq_finiFunction · 0.85
sfc_rx_fini_queuesFunction · 0.85
sfc_mae_counter_rxq_finiFunction · 0.85
sfc_rx_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