On Sun, 19 Jun 2022 12:30:33 +0300 Ido Goshen <i...@cgstowernetworks.com> wrote:
> Drop only the oversized packets and not its entrie burst > mbuf will be freed and will be counted as oerror > > Signed-off-by: Ido Goshen <i...@cgstowernetworks.com> > --- > drivers/net/pcap/pcap_ethdev.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/drivers/net/pcap/pcap_ethdev.c b/drivers/net/pcap/pcap_ethdev.c > index 2221c53051..ff98762058 100644 > --- a/drivers/net/pcap/pcap_ethdev.c > +++ b/drivers/net/pcap/pcap_ethdev.c > @@ -494,8 +494,14 @@ eth_pcap_tx(void *queue, struct rte_mbuf **bufs, > uint16_t nb_pkts) > */ > ret = pcap_sendpacket(pcap, > rte_pktmbuf_read(mbuf, 0, len, temp_data), len); > - if (unlikely(ret != 0)) > - break; > + if (unlikely(ret != 0)) { > + if (errno == EMSGSIZE) { Will this show up in tx_errors? > + rte_pktmbuf_free(mbuf); > + continue; > + } else { > + break; > + } else is not needed here. > + } > num_tx++; > tx_bytes += len; > rte_pktmbuf_free(mbuf);