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

Function enic_pick_rx_handler

dpdk/drivers/net/enic/enic_main.c:534–558  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

532}
533
534void enic_pick_rx_handler(struct rte_eth_dev *eth_dev)
535{
536 struct enic *enic = pmd_priv(eth_dev);
537
538 if (enic->cq64) {
539 ENICPMD_LOG(DEBUG, " use the normal Rx handler for 64B CQ entry");
540 eth_dev->rx_pkt_burst = &enic_recv_pkts_64;
541 return;
542 }
543 /*
544 * Preference order:
545 * 1. The vectorized handler if possible and requested.
546 * 2. The non-scatter, simplified handler if scatter Rx is not used.
547 * 3. The default handler as a fallback.
548 */
549 if (enic_use_vector_rx_handler(eth_dev))
550 return;
551 if (enic->rq_count > 0 && enic->rq[0].data_queue_enable == 0) {
552 ENICPMD_LOG(DEBUG, " use the non-scatter Rx handler");
553 eth_dev->rx_pkt_burst = &enic_noscatter_recv_pkts;
554 } else {
555 ENICPMD_LOG(DEBUG, " use the normal Rx handler");
556 eth_dev->rx_pkt_burst = &enic_recv_pkts;
557 }
558}
559
560/* Secondary process uses this to set the Tx handler */
561void enic_pick_tx_handler(struct rte_eth_dev *eth_dev)

Callers 3

enic_enableFunction · 0.85
enic_set_mtuFunction · 0.85
eth_enic_dev_initFunction · 0.85

Calls 2

pmd_privFunction · 0.85

Tested by

no test coverage detected