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>

Reply via email to