DPDK patches and discussions
 help / color / mirror / Atom feed
* unnecessary rx callbacks when zero packets
@ 2024-01-07 17:37 Stephen Hemminger
  2024-01-07 20:57 ` Honnappa Nagarahalli
  2024-01-08 15:20 ` Konstantin Ananyev
  0 siblings, 2 replies; 5+ messages in thread
From: Stephen Hemminger @ 2024-01-07 17:37 UTC (permalink / raw)
  To: dev

I noticed while looking at packet capture that currently the receive callbacks
get called even if there are no packets. This seems unnecessary since if
nb_rx is zero, then there are no packets to look at.  My one concern is that
an application could be using callbacks as some form of scheduling mechanism
which would be broken.

The change would be:


diff --git a/lib/ethdev/rte_ethdev.h b/lib/ethdev/rte_ethdev.h
index 21e3a21903ec..f64bf977c46e 100644
--- a/lib/ethdev/rte_ethdev.h
+++ b/lib/ethdev/rte_ethdev.h
@@ -6077,7 +6077,7 @@ rte_eth_rx_burst(uint16_t port_id, uint16_t queue_id,
        nb_rx = p->rx_pkt_burst(qd, rx_pkts, nb_pkts);
 
 #ifdef RTE_ETHDEV_RXTX_CALLBACKS
-       {
+       if (nb_rx > 0) {
                void *cb;
 
                /* rte_memory_order_release memory order was used when the

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-01-09 11:28 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-01-07 17:37 unnecessary rx callbacks when zero packets Stephen Hemminger
2024-01-07 20:57 ` Honnappa Nagarahalli
2024-01-08 10:19   ` Morten Brørup
2024-01-08 15:20 ` Konstantin Ananyev
2024-01-09 11:28   ` Ferruh Yigit

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).