On 01/26, David Harton wrote:
>Modified UPDATE_VF_STAT to properly handle rollover conditions.
>
>Fixes: d82170d27918 ("igb: add VF support")
>Cc: intel.com
>
>Signed-off-by: David Harton <dhar...@cisco.com>
>---
> drivers/net/e1000/igb_ethdev.c | 14 +++++++++-----
> 1 file changed, 9 insertions(+), 5 deletions(-)
>
>diff --git a/drivers/net/e1000/igb_ethdev.c b/drivers/net/e1000/igb_ethdev.c
>index a3e30dbe5..825663267 100644
>--- a/drivers/net/e1000/igb_ethdev.c
>+++ b/drivers/net/e1000/igb_ethdev.c
>@@ -261,11 +261,15 @@ static int igb_filter_restore(struct rte_eth_dev *dev);
> /*
>  * Define VF Stats MACRO for Non "cleared on read" register
>  */
>-#define UPDATE_VF_STAT(reg, last, cur)            \
>-{                                                 \
>-      u32 latest = E1000_READ_REG(hw, reg);     \
>-      cur += (latest - last) & UINT_MAX;        \
>-      last = latest;                            \
>+#define UPDATE_VF_STAT(reg, last, cur)                          \
>+{                                                               \
>+      u32 latest = E1000_READ_REG(hw, reg);                   \
>+      if (latest >= last)                                     \
>+              cur += (latest - last);                         \
>+      else                                                    \
>+              cur += ((latest + ((uint64_t)1 << 32)) - last); \
>+      cur &= UINT_MAX;                                        \
>+      last = latest;                                          \
> }
> 
> #define IGB_FC_PAUSE_TIME 0x0680
>-- 
>2.19.1
>

Acked-by: Xiaolong Ye <xiaolong...@intel.com>

Applied to dpdk-next-net-intel, Thanks.

Reply via email to