DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH v1] i40e: Fix the statistics issue of i40e
@ 2015-10-29  3:26 Xutao Sun
  2015-10-29  5:36 ` [dpdk-dev] [PATCH v2] " Xutao Sun
  0 siblings, 1 reply; 17+ messages in thread
From: Xutao Sun @ 2015-10-29  3:26 UTC (permalink / raw)
  To: dev

The old statistics on i40e only count the packets on ports.
This patch is to make statistics for packets both on ports and VSI.
But there're still some issues about statistics for 'bytes'.

Signed-off-by: Xutao Sun <xutao.sun@intel.com>
---
 drivers/net/i40e/i40e_ethdev.c | 19 ++++++++++++-------
 1 file changed, 12 insertions(+), 7 deletions(-)

diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c
index 40b0526..a8d7116 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -1511,21 +1511,26 @@ i40e_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats)
 	if (pf->main_vsi)
 		i40e_update_vsi_stats(pf->main_vsi);
 
-	stats->ipackets = ns->eth.rx_unicast + ns->eth.rx_multicast +
-						ns->eth.rx_broadcast;
-	stats->opackets = ns->eth.tx_unicast + ns->eth.tx_multicast +
-						ns->eth.tx_broadcast;
+	stats->ipackets = pf->main_vsi->eth_stats.rx_unicast +
+			pf->main_vsi->eth_stats.rx_multicast +
+			pf->main_vsi->eth_stats.rx_broadcast -
+			pf->main_vsi->eth_stats.rx_discards;
+	stats->opackets = pf->main_vsi->eth_stats.tx_unicast +
+			pf->main_vsi->eth_stats.tx_multicast +
+			pf->main_vsi->eth_stats.tx_broadcast;
 	stats->ibytes   = ns->eth.rx_bytes;
 	stats->obytes   = ns->eth.tx_bytes;
-	stats->oerrors  = ns->eth.tx_errors;
-	stats->imcasts  = ns->eth.rx_multicast;
+	stats->oerrors  = ns->eth.tx_errors + 
+			pf->main_vsi->eth_stats.tx_errors;
+	stats->imcasts  = pf->main_vsi->eth_stats.rx_multicast;
 	stats->fdirmatch = ns->fd_sb_match;
 
 	/* Rx Errors */
 	stats->ibadcrc  = ns->crc_errors;
 	stats->ibadlen  = ns->rx_length_errors + ns->rx_undersize +
 			ns->rx_oversize + ns->rx_fragments + ns->rx_jabber;
-	stats->imissed  = ns->eth.rx_discards;
+	stats->imissed  = ns->eth.rx_discards + 
+			pf->main_vsi->eth_stats.rx_discards;
 	stats->ierrors  = stats->ibadcrc + stats->ibadlen + stats->imissed;
 
 	PMD_DRV_LOG(DEBUG, "***************** PF stats start *******************");
-- 
1.9.3

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

end of thread, other threads:[~2015-11-04 12:13 UTC | newest]

Thread overview: 17+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-10-29  3:26 [dpdk-dev] [PATCH v1] i40e: Fix the statistics issue of i40e Xutao Sun
2015-10-29  5:36 ` [dpdk-dev] [PATCH v2] " Xutao Sun
2015-10-29  8:02   ` [dpdk-dev] [PATCH v3 0/2] " Xutao Sun
2015-10-29  8:02     ` [dpdk-dev] [PATCH v3 1/2] " Xutao Sun
2015-10-29  8:02     ` [dpdk-dev] [PATCH v3 2/2] doc: update release notes Xutao Sun
2015-10-29  8:19     ` [dpdk-dev] [PATCH v3 0/2] i40e: Fix the statistics issue of i40e Thomas Monjalon
2015-10-29  8:32       ` Sun, Xutao
2015-10-29  9:52     ` Van Haaren, Harry
2015-10-30  6:09     ` [dpdk-dev] [PATCH v4] " Xutao Sun
2015-10-30  8:20       ` [dpdk-dev] [PATCH v5] " Xutao Sun
2015-10-30  8:26         ` Zhang, Helin
2015-11-02 23:34         ` Thomas Monjalon
2015-11-04  4:23           ` Sun, Xutao
2015-11-04  9:21             ` Thomas Monjalon
2015-11-04  9:20         ` [dpdk-dev] [PATCH v6] " Xutao Sun
2015-11-04 10:06           ` Van Haaren, Harry
2015-11-04 12:12             ` Thomas Monjalon

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).