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.

Signed-off-by: Igor Ryzhov <iryzhov at nfware.com>
---
 app/test-pmd/testpmd.c           | 4 ++--
 drivers/net/cxgbe/cxgbe_ethdev.c | 2 +-
 drivers/net/e1000/em_ethdev.c    | 1 -
 drivers/net/e1000/igb_ethdev.c   | 1 -
 drivers/net/i40e/i40e_ethdev.c   | 3 +--
 drivers/net/ixgbe/ixgbe_ethdev.c | 1 -
 6 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index 269ef81..d3d733b 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -753,7 +753,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);
                }
@@ -772,7 +772,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 97ef152..0070e2a 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 4a843fe..27ace6d 100644
--- a/drivers/net/e1000/em_ethdev.c
+++ b/drivers/net/e1000/em_ethdev.c
@@ -914,7 +914,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 4ed5e95..6e93214 100644
--- a/drivers/net/e1000/igb_ethdev.c
+++ b/drivers/net/e1000/igb_ethdev.c
@@ -1640,7 +1640,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 7e68c61..7d68d4d 100644
--- a/drivers/net/i40e/i40e_ethdev.c
+++ b/drivers/net/i40e/i40e_ethdev.c
@@ -2062,8 +2062,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 3e6fe86..ba84544 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -2552,7 +2552,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 +
-- 
2.6.4

Reply via email to