diff options
author | Todd Fujinaka <todd.fujinaka@intel.com> | 2014-04-08 01:36:15 -0400 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2014-04-18 21:24:53 -0400 |
commit | e66c083aab32842f225bae2a2c30744bf96abaec (patch) | |
tree | 37ec0dc52c888f3eb1a09e8fa782c32020b5cefb /drivers/net/ethernet/intel/igb/igb_main.c | |
parent | 3e7986f67c0e444b2419f25c48815e17ebbab836 (diff) |
igb: fix stats for i210 rx_fifo_errors
RQDPC on i210/i211 is R/W not ReadClear. Clear after reading.
Signed-off-by: Todd Fujinaka <todd.fujinaka@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/ethernet/intel/igb/igb_main.c')
-rw-r--r-- | drivers/net/ethernet/intel/igb/igb_main.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c index fb98d4602f9d..16430a8440fa 100644 --- a/drivers/net/ethernet/intel/igb/igb_main.c +++ b/drivers/net/ethernet/intel/igb/igb_main.c | |||
@@ -5193,8 +5193,10 @@ void igb_update_stats(struct igb_adapter *adapter, | |||
5193 | 5193 | ||
5194 | rcu_read_lock(); | 5194 | rcu_read_lock(); |
5195 | for (i = 0; i < adapter->num_rx_queues; i++) { | 5195 | for (i = 0; i < adapter->num_rx_queues; i++) { |
5196 | u32 rqdpc = rd32(E1000_RQDPC(i)); | ||
5197 | struct igb_ring *ring = adapter->rx_ring[i]; | 5196 | struct igb_ring *ring = adapter->rx_ring[i]; |
5197 | u32 rqdpc = rd32(E1000_RQDPC(i)); | ||
5198 | if (hw->mac.type >= e1000_i210) | ||
5199 | wr32(E1000_RQDPC(i), 0); | ||
5198 | 5200 | ||
5199 | if (rqdpc) { | 5201 | if (rqdpc) { |
5200 | ring->rx_stats.drops += rqdpc; | 5202 | ring->rx_stats.drops += rqdpc; |