Bug fix to remove (rxnfgpc - hw_stats->gprc) which does not account
for phy errors. hw_stats->gprc is the Number of good (non-erred) Rx
packets (from the network) that pass L2 filtering and has a legal
length as defined by LongPacketEnable. While rxnfgpc is the Number of
good (non-erred with legal length) Rx packets (from the network)
regardless of packet filtering and receive enablement. Thus
hw_stats->gprc can be > rxnfgpc and this calculation should be removed
from the calculation of ierrors. Validated with testpmd by sending
packets to the interface without forwarding enabled - packets should
be dropped and the error counters incremented.

Signed-off-by: Maryam Tahhan <maryam.tahhan at intel.com>
---
 drivers/net/ixgbe/ixgbe_ethdev.c | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)

diff --git a/drivers/net/ixgbe/ixgbe_ethdev.c b/drivers/net/ixgbe/ixgbe_ethdev.c
index 3a8cff0..09fac25 100644
--- a/drivers/net/ixgbe/ixgbe_ethdev.c
+++ b/drivers/net/ixgbe/ixgbe_ethdev.c
@@ -2143,8 +2143,7 @@ ixgbe_dev_stats_get(struct rte_eth_dev *dev, struct 
rte_eth_stats *stats)
                          hw_stats->rfc +
                          hw_stats->rjc +
                          hw_stats->fccrc +
-                         hw_stats->fclast +
-                         (rxnfgpc - hw_stats->gprc); /* PHY Errors*/
+                         hw_stats->fclast;

        /* Tx Errors */
        /*txdgpc: packets that are DMA'ed*/
-- 
2.4.3

Reply via email to