[dpdk-dev] [PATCH] net/pcap: fix byte stats for drop Tx

Subsystems: networking drivers, the rest

4 messages, 2 authors, 2021-02-04 · open the first message on its own page

[dpdk-dev] [PATCH] net/pcap: fix byte stats for drop Tx

From: Ferruh Yigit <hidden>
Date: 2021-02-03 17:30:34

Drop Tx path in pcap is Tx that just drops the packets, which is used
for the case only Rx from a pcap file is requested/matters.

The byte stats was calculated using first mbuf segment, which gives
wrong values for multi segmented mbufs, updated to use packet length
instead.

Bugzilla ID: 597
Fixes: a3f5252e5cbd ("net/pcap: enable infinitely Rx a pcap file")
Cc: stable@dpdk.org

Reported-by: Cian Ferriter <redacted>
Signed-off-by: Ferruh Yigit <redacted>
---
 drivers/net/pcap/rte_eth_pcap.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/net/pcap/rte_eth_pcap.c b/drivers/net/pcap/rte_eth_pcap.c
index ff02ade70d1a..c7751b7ba742 100644
--- a/drivers/net/pcap/rte_eth_pcap.c
+++ b/drivers/net/pcap/rte_eth_pcap.c
@@ -386,7 +386,7 @@ eth_tx_drop(void *queue, struct rte_mbuf **bufs, uint16_t nb_pkts)
 		return 0;
 
 	for (i = 0; i < nb_pkts; i++) {
-		tx_bytes += bufs[i]->data_len;
+		tx_bytes += bufs[i]->pkt_len;
 		rte_pktmbuf_free(bufs[i]);
 	}
 
-- 
2.29.2

Re: [dpdk-dev] [PATCH] net/pcap: fix byte stats for drop Tx

From: Ferriter, Cian <hidden>
Date: 2021-02-04 15:47:44

-----Original Message-----
From: Yigit, Ferruh <redacted>
Sent: Wednesday 3 February 2021 17:30
To: Ferriter, Cian <redacted>
Cc: Yigit, Ferruh <redacted>; dev@dpdk.org; stable@dpdk.org
Subject: [PATCH] net/pcap: fix byte stats for drop Tx

Drop Tx path in pcap is Tx that just drops the packets, which is used
for the case only Rx from a pcap file is requested/matters.

The byte stats was calculated using first mbuf segment, which gives
wrong values for multi segmented mbufs, updated to use packet length
instead.

Bugzilla ID: 597
Fixes: a3f5252e5cbd ("net/pcap: enable infinitely Rx a pcap file")
Cc: stable@dpdk.org

Reported-by: Cian Ferriter <redacted>
Signed-off-by: Ferruh Yigit <redacted>
---
Acked-by: Cian Ferriter <redacted>

Tested this with 2 large PCAPs and it works as expected:

testpmd> show port stats all

  ######################## NIC statistics for port 0  ########################
  RX-packets: 2          RX-missed: 0          RX-bytes:  131070
  RX-errors: 0
  RX-nombuf:  0
  TX-packets: 2          TX-errors: 0          TX-bytes:  131070

  Throughput (since last show)
  Rx-pps:            0          Rx-bps:            0
  Tx-pps:            0          Tx-bps:            0
  ############################################################################

Re: [dpdk-dev] [PATCH] net/pcap: fix byte stats for drop Tx

From: Ferriter, Cian <hidden>
Date: 2021-02-04 16:24:51

-----Original Message-----
From: Ferriter, Cian
Sent: Thursday 4 February 2021 15:48
To: Yigit, Ferruh <redacted>
Cc: dev@dpdk.org; stable@dpdk.org
Subject: RE: [PATCH] net/pcap: fix byte stats for drop Tx


quoted
-----Original Message-----
From: Yigit, Ferruh <redacted>
Sent: Wednesday 3 February 2021 17:30
To: Ferriter, Cian <redacted>
Cc: Yigit, Ferruh <redacted>; dev@dpdk.org;
stable@dpdk.org
quoted
Subject: [PATCH] net/pcap: fix byte stats for drop Tx

Drop Tx path in pcap is Tx that just drops the packets, which is used
for the case only Rx from a pcap file is requested/matters.

The byte stats was calculated using first mbuf segment, which gives
wrong values for multi segmented mbufs, updated to use packet length
instead.

Bugzilla ID: 597
Fixes: a3f5252e5cbd ("net/pcap: enable infinitely Rx a pcap file")
Cc: stable@dpdk.org

Reported-by: Cian Ferriter <redacted>
Signed-off-by: Ferruh Yigit <redacted>
---
Acked-by: Cian Ferriter <redacted>

Tested this with 2 large PCAPs and it works as expected:

testpmd> show port stats all

  ######################## NIC statistics for port 0
########################
  RX-packets: 2          RX-missed: 0          RX-bytes:  131070
  RX-errors: 0
  RX-nombuf:  0
  TX-packets: 2          TX-errors: 0          TX-bytes:  131070

  Throughput (since last show)
  Rx-pps:            0          Rx-bps:            0
  Tx-pps:            0          Tx-bps:            0

##########################################################
##################
[Cian Ferriter] 
Just to clarify, the Testpmd CMD used to get the stats I pasted above is:

dpdk-testpmd -l 1,2 -w 0:00.0 --vdev net_pcap0,rx_pcap=/root/udp_2_max_jumbo.pcap -- --no-flush-rx --i

This means that tx_drop was enabled because no tx_pcap file was passed to the PCAP PMD as an arg.

Re: [dpdk-dev] [PATCH] net/pcap: fix byte stats for drop Tx

From: Ferruh Yigit <hidden>
Date: 2021-02-04 16:41:03

On 2/4/2021 3:47 PM, Ferriter, Cian wrote:
quoted
-----Original Message-----
From: Yigit, Ferruh <redacted>
Sent: Wednesday 3 February 2021 17:30
To: Ferriter, Cian <redacted>
Cc: Yigit, Ferruh <redacted>; dev@dpdk.org; stable@dpdk.org
Subject: [PATCH] net/pcap: fix byte stats for drop Tx

Drop Tx path in pcap is Tx that just drops the packets, which is used
for the case only Rx from a pcap file is requested/matters.

The byte stats was calculated using first mbuf segment, which gives
wrong values for multi segmented mbufs, updated to use packet length
instead.

Bugzilla ID: 597
Fixes: a3f5252e5cbd ("net/pcap: enable infinitely Rx a pcap file")
Cc: stable@dpdk.org

Reported-by: Cian Ferriter <redacted>
Signed-off-by: Ferruh Yigit <redacted>
---
Acked-by: Cian Ferriter <redacted>

Tested this with 2 large PCAPs and it works as expected:
Applied to dpdk-next-net/main, thanks.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help