From: Igor Ryzhov Date: Thu, 10 Mar 2016 13:03:30 +0000 (+0300) Subject: ethdev: remove missed packets from error counter X-Git-Tag: spdx-start~7246 X-Git-Url: http://git.droids-corp.org/?a=commitdiff_plain;h=86057c9992f5ddfd378e1d5dba47f426926e72ea;p=dpdk.git ethdev: remove missed packets from error counter Comment for "ierrors" counter says that it counts erroneous received packets. But for some reason "imissed" counter is added to "ierrors" counter in most drivers. It is a mistake, because missed packets are obviously not received. This patch fixes it. Fixes: 70bdb18657da ("ethdev: add Rx error counters for missed, badcrc and badlen packets") Fixes: 6bfe648406b5 ("i40e: add Rx error statistics") Fixes: 856505d303f4 ("cxgbe: add port statistics") Signed-off-by: Igor Ryzhov Acked-by: Wenzhuo Lu Acked-by: Rahul Lakkireddy Acked-by: Thomas Monjalon --- diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c index 38b9051a5e..8605e6287b 100644 --- a/app/test-pmd/testpmd.c +++ b/app/test-pmd/testpmd.c @@ -759,7 +759,7 @@ fwd_port_stats_display(portid_t port_id, struct rte_eth_stats *stats) if (cur_fwd_eng == &csum_fwd_engine) printf(" Bad-ipcsum: %-14"PRIu64" Bad-l4csum: %-14"PRIu64" \n", port->rx_bad_ip_csum, port->rx_bad_l4_csum); - if (((stats->ierrors - stats->imissed) + stats->rx_nombuf) > 0) { + if ((stats->ierrors + stats->rx_nombuf) > 0) { printf(" RX-error: %-"PRIu64"\n", stats->ierrors); printf(" RX-nombufs: %-14"PRIu64"\n", stats->rx_nombuf); } @@ -778,7 +778,7 @@ fwd_port_stats_display(portid_t port_id, struct rte_eth_stats *stats) if (cur_fwd_eng == &csum_fwd_engine) printf(" Bad-ipcsum:%14"PRIu64" Bad-l4csum:%14"PRIu64"\n", port->rx_bad_ip_csum, port->rx_bad_l4_csum); - if (((stats->ierrors - stats->imissed) + stats->rx_nombuf) > 0) { + if ((stats->ierrors + stats->rx_nombuf) > 0) { printf(" RX-error:%"PRIu64"\n", stats->ierrors); printf(" RX-nombufs: %14"PRIu64"\n", stats->rx_nombuf); diff --git a/drivers/net/cxgbe/cxgbe_ethdev.c b/drivers/net/cxgbe/cxgbe_ethdev.c index 8c6dd595d1..ecd8dc3cdc 100644 --- a/drivers/net/cxgbe/cxgbe_ethdev.c +++ b/drivers/net/cxgbe/cxgbe_ethdev.c @@ -662,7 +662,7 @@ static void cxgbe_dev_stats_get(struct rte_eth_dev *eth_dev, ps.rx_trunc2 + ps.rx_trunc3; eth_stats->ierrors = ps.rx_symbol_err + ps.rx_fcs_err + ps.rx_jabber + ps.rx_too_long + ps.rx_runt + - ps.rx_len_err + eth_stats->imissed; + ps.rx_len_err; /* TX Stats */ eth_stats->opackets = ps.tx_frames; diff --git a/drivers/net/e1000/em_ethdev.c b/drivers/net/e1000/em_ethdev.c index a8c26edca7..1f0a7f4ce3 100644 --- a/drivers/net/e1000/em_ethdev.c +++ b/drivers/net/e1000/em_ethdev.c @@ -945,7 +945,6 @@ eth_em_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *rte_stats) rte_stats->imissed = stats->mpc; rte_stats->ierrors = stats->crcerrs + stats->rlec + stats->ruc + stats->roc + - rte_stats->imissed + stats->rxerrc + stats->algnerrc + stats->cexterr; /* Tx Errors */ diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c index 9a34d0113e..e89944911a 100644 --- a/drivers/net/e1000/igb_ethdev.c +++ b/drivers/net/e1000/igb_ethdev.c @@ -1651,7 +1651,6 @@ eth_igb_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *rte_stats) rte_stats->imissed = stats->mpc; rte_stats->ierrors = stats->crcerrs + stats->rlec + stats->ruc + stats->roc + - rte_stats->imissed + stats->rxerrc + stats->algnerrc + stats->cexterr; /* Tx Errors */ diff --git a/drivers/net/i40e/i40e_ethdev.c b/drivers/net/i40e/i40e_ethdev.c index 10e0d38507..6fdae5776e 100644 --- a/drivers/net/i40e/i40e_ethdev.c +++ b/drivers/net/i40e/i40e_ethdev.c @@ -2092,8 +2092,7 @@ i40e_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats) pf->main_vsi->eth_stats.rx_discards; stats->ierrors = ns->crc_errors + ns->rx_length_errors + ns->rx_undersize + - ns->rx_oversize + ns->rx_fragments + ns->rx_jabber + - stats->imissed; + ns->rx_oversize + ns->rx_fragments + ns->rx_jabber; PMD_DRV_LOG(DEBUG, "***************** PF stats start *******************"); PMD_DRV_LOG(DEBUG, "rx_bytes: %"PRIu64"", ns->eth.rx_bytes); diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c index 53717200fe..d4d883a1cb 100644 --- a/drivers/net/ixgbe/ixgbe_ethdev.c +++ b/drivers/net/ixgbe/ixgbe_ethdev.c @@ -2646,7 +2646,6 @@ ixgbe_dev_stats_get(struct rte_eth_dev *dev, struct rte_eth_stats *stats) hw_stats->rlec + hw_stats->ruc + hw_stats->roc + - total_missed_rx + hw_stats->illerrc + hw_stats->errbc + hw_stats->rfc +