• Michael Chan's avatar
    bnxt_en: Fix accumulation of bp->net_stats_prev. · b8056e84
    Michael Chan authored
    We have logic to maintain network counters across resets by storing
    the counters in bp->net_stats_prev before reset.  But not all resets
    will clear the counters.  Certain resets that don't need to change
    the number of rings do not clear the counters.  The current logic
    accumulates the counters before all resets, causing big jumps in
    the counters after some resets, such as ethtool -G.
    
    Fix it by only accumulating the counters during reset if the irq_re_init
    parameter is set.  The parameter signifies that all rings and interrupts
    will be reset and that means that the counters will also be reset.
    Reported-by: default avatarVijayendra Suman <vijayendra.suman@oracle.com>
    Fixes: b8875ca3 ("bnxt_en: Save ring statistics before reset.")
    Signed-off-by: default avatarMichael Chan <michael.chan@broadcom.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    b8056e84
bnxt.c 321 KB