Fix the incorrect ingress and egress packet number calculation.

Fixes: e3289d8fb63f ("net/cpfl: support basic statistics")
Cc: sta...@dpdk.org

Signed-off-by: Simei Su <simei...@intel.com>
---
 drivers/net/cpfl/cpfl_ethdev.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/net/cpfl/cpfl_ethdev.c b/drivers/net/cpfl/cpfl_ethdev.c
index 189072a..75d2d22 100644
--- a/drivers/net/cpfl/cpfl_ethdev.c
+++ b/drivers/net/cpfl/cpfl_ethdev.c
@@ -313,9 +313,11 @@ cpfl_dev_stats_get(struct rte_eth_dev *dev, struct 
rte_eth_stats *stats)
 
                idpf_vport_stats_update(&vport->eth_stats_offset, pstats);
                stats->ipackets = pstats->rx_unicast + pstats->rx_multicast +
-                               pstats->rx_broadcast - pstats->rx_discards;
+                               pstats->rx_broadcast + pstats->rx_discards +
+                               pstats->rx_errors + pstats->rx_unknown_protocol;
                stats->opackets = pstats->tx_broadcast + pstats->tx_multicast +
-                                               pstats->tx_unicast;
+                               pstats->tx_unicast + pstats->tx_discards +
+                               pstats->tx_errors;
                stats->imissed = pstats->rx_discards;
                stats->ierrors = pstats->rx_errors;
                stats->oerrors = pstats->tx_errors + pstats->tx_discards;
-- 
2.9.5

Reply via email to