Commit ef90e4ec authored by Auke Kok's avatar Auke Kok Committed by David S. Miller

[E1000]: update netstats traffic counters realtime

formerly e1000/e1000e only updated traffic counters once every
2 seconds with the register values of bytes/packets. With newer
code however in the interrupt and polling code we can real-time
fill in these values in the netstats struct for users to see.
Signed-off-by: default avatarAuke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 41988692
...@@ -3653,10 +3653,6 @@ e1000_update_stats(struct e1000_adapter *adapter) ...@@ -3653,10 +3653,6 @@ e1000_update_stats(struct e1000_adapter *adapter)
} }
/* Fill out the OS statistics structure */ /* Fill out the OS statistics structure */
adapter->net_stats.rx_packets = adapter->stats.gprc;
adapter->net_stats.tx_packets = adapter->stats.gptc;
adapter->net_stats.rx_bytes = adapter->stats.gorcl;
adapter->net_stats.tx_bytes = adapter->stats.gotcl;
adapter->net_stats.multicast = adapter->stats.mprc; adapter->net_stats.multicast = adapter->stats.mprc;
adapter->net_stats.collisions = adapter->stats.colc; adapter->net_stats.collisions = adapter->stats.colc;
...@@ -4032,6 +4028,8 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter, ...@@ -4032,6 +4028,8 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter,
} }
adapter->total_tx_bytes += total_tx_bytes; adapter->total_tx_bytes += total_tx_bytes;
adapter->total_tx_packets += total_tx_packets; adapter->total_tx_packets += total_tx_packets;
adapter->net_stats.tx_bytes += total_tx_bytes;
adapter->net_stats.tx_packets += total_tx_packets;
return cleaned; return cleaned;
} }
...@@ -4254,6 +4252,8 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter, ...@@ -4254,6 +4252,8 @@ e1000_clean_rx_irq(struct e1000_adapter *adapter,
adapter->total_rx_packets += total_rx_packets; adapter->total_rx_packets += total_rx_packets;
adapter->total_rx_bytes += total_rx_bytes; adapter->total_rx_bytes += total_rx_bytes;
adapter->net_stats.rx_bytes += total_rx_bytes;
adapter->net_stats.rx_packets += total_rx_packets;
return cleaned; return cleaned;
} }
...@@ -4441,6 +4441,8 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter, ...@@ -4441,6 +4441,8 @@ e1000_clean_rx_irq_ps(struct e1000_adapter *adapter,
adapter->total_rx_packets += total_rx_packets; adapter->total_rx_packets += total_rx_packets;
adapter->total_rx_bytes += total_rx_bytes; adapter->total_rx_bytes += total_rx_bytes;
adapter->net_stats.rx_bytes += total_rx_bytes;
adapter->net_stats.rx_packets += total_rx_packets;
return cleaned; return cleaned;
} }
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment