On 9/22/2020 8:37 AM, Junyu Jiang wrote:
This patch fixed the issue that rx/tx bytes statistics counters
overflowed on 48 bit limitation by enlarging the limitation.
Fixes: 4861cde46116 ("i40e: new poll mode driver")
Cc: sta...@dpdk.org
Signed-off-by: Junyu Jiang <junyux.ji...@intel.com>
---
v4: put reading stats and extending in same function.
v3: create a function to hide the extension inside it.
v2: modify the error code
---
---
doc/guides/nics/i40e.rst | 7 ++++
drivers/net/i40e/i40e_ethdev.c | 66 +++++++++++++++++++++-------------
drivers/net/i40e/i40e_ethdev.h | 9 +++++
3 files changed, 57 insertions(+), 25 deletions(-)
diff --git a/doc/guides/nics/i40e.rst b/doc/guides/nics/i40e.rst
index b7430f6c4..4baa58be6 100644
--- a/doc/guides/nics/i40e.rst
+++ b/doc/guides/nics/i40e.rst
@@ -830,3 +830,10 @@ Tx bytes affected by the link status change
For firmware versions prior to 6.01 for X710 series and 3.33 for X722 series, the tx_bytes statistics data is affected by
the link down event. Each time the link status changes to down, the tx_bytes
decreases 110 bytes.
+
+RX/TX statistics may be incorrect when register overflowed
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+The rx_bytes/tx_bytes statistics register is 48 bit length. Although this
limitation is enlarged to 64 bit length
+on the software side, but there is no way to detect if the overflow occurred
more than once. So rx_bytes/tx_bytes
+statistics data is correct when statistics are updated at least once between
two overflows.
It can be better to move this block next to other know issue related to
the stats (Incorrect Rx statistics when packet is oversize), apart from
that:
Reviewed-by: Ferruh Yigit <ferruh.yi...@intel.com>