[PATCH 00/10] port: implement output port non-blocking behavior
Cristian Dumitrescu
cristian.dumitrescu at intel.com
Sat Aug 6 00:00:19 CEST 2022
In case of blocking behavior, the output port retries sending the
packets that could not be sent successfully. The retry can take place
potentially forever in case the Ethernet device or the ring consumer
are down, which leads to deadlock.
In case of the non-blocking behavior introduced by this series, the
packets that could not be sent successfully are dropped and the
associated drop statistics counters are incremented.
Depends-on: series-24205 ("net/softnic: replace the legacy pipeline with SWX pipeline")
Cristian Dumitrescu (10):
port: add output port packet drop statistics couters
port: adjust the sink port counters
port: rework the Ethernet device output port behavior to non-blocking
port: free buffered packets on Ethernet device output port free
port: prevent unnecessary flush for the Ethernet device output port
port: rework the ring output port behavior to non-blocking
port: free buffered packets on ring output port free
port: prevent unnecessary flush for the ring output port
examples/pipeline: print the output port packet drop counters
net/softnic: print the output port packet drop counters
drivers/net/softnic/rte_eth_softnic_cli.c | 4 +
examples/pipeline/cli.c | 4 +
lib/port/rte_swx_port.h | 10 +-
lib/port/rte_swx_port_ethdev.c | 117 +++++++++++++++-------
lib/port/rte_swx_port_ring.c | 113 ++++++++++++++-------
lib/port/rte_swx_port_source_sink.c | 8 +-
6 files changed, 177 insertions(+), 79 deletions(-)
--
2.34.1
More information about the dev
mailing list