forked from Minki/linux
ixgbevf: Prevent RX/TX statistics getting reset to zero
The commit 4197aa7bb8
implements 64 bit
per ring statistics. But the driver resets the 'total_bytes' and
'total_packets' from RX and TX rings in the RX and TX interrupt
handlers to zero. This results in statistics being lost and user space
reporting RX and TX statistics as zero. This patch addresses the
issue by preventing the resetting of RX and TX ring statistics to
zero.
Signed-off-by: Narendra K <narendra_k@dell.com>
Tested-by: Sibai Li <sibai.li@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
2eebc1e188
commit
936597631d
@ -969,8 +969,6 @@ static irqreturn_t ixgbevf_msix_clean_tx(int irq, void *data)
|
||||
r_idx = find_first_bit(q_vector->txr_idx, adapter->num_tx_queues);
|
||||
for (i = 0; i < q_vector->txr_count; i++) {
|
||||
tx_ring = &(adapter->tx_ring[r_idx]);
|
||||
tx_ring->total_bytes = 0;
|
||||
tx_ring->total_packets = 0;
|
||||
ixgbevf_clean_tx_irq(adapter, tx_ring);
|
||||
r_idx = find_next_bit(q_vector->txr_idx, adapter->num_tx_queues,
|
||||
r_idx + 1);
|
||||
@ -994,16 +992,6 @@ static irqreturn_t ixgbevf_msix_clean_rx(int irq, void *data)
|
||||
struct ixgbe_hw *hw = &adapter->hw;
|
||||
struct ixgbevf_ring *rx_ring;
|
||||
int r_idx;
|
||||
int i;
|
||||
|
||||
r_idx = find_first_bit(q_vector->rxr_idx, adapter->num_rx_queues);
|
||||
for (i = 0; i < q_vector->rxr_count; i++) {
|
||||
rx_ring = &(adapter->rx_ring[r_idx]);
|
||||
rx_ring->total_bytes = 0;
|
||||
rx_ring->total_packets = 0;
|
||||
r_idx = find_next_bit(q_vector->rxr_idx, adapter->num_rx_queues,
|
||||
r_idx + 1);
|
||||
}
|
||||
|
||||
if (!q_vector->rxr_count)
|
||||
return IRQ_HANDLED;
|
||||
|
Loading…
Reference in New Issue
Block a user