diff options
author | Auke Kok <auke-jan.h.kok@intel.com> | 2007-11-13 23:49:15 -0500 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2008-01-28 18:03:49 -0500 |
commit | ef90e4eca9fcade05dd03f853df75cf459a75422 (patch) | |
tree | 1285956c5b0d31ac19ff561f08e826c5915963f2 | |
parent | 419886927796dfeca87c1fd11d1fe2ed442103cc (diff) |
[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: Auke Kok <auke-jan.h.kok@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/e1000/e1000_main.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c index f318634c997d..40dbe4cfe556 100644 --- a/drivers/net/e1000/e1000_main.c +++ b/drivers/net/e1000/e1000_main.c | |||
@@ -3653,10 +3653,6 @@ e1000_update_stats(struct e1000_adapter *adapter) | |||
3653 | } | 3653 | } |
3654 | 3654 | ||
3655 | /* Fill out the OS statistics structure */ | 3655 | /* Fill out the OS statistics structure */ |
3656 | adapter->net_stats.rx_packets = adapter->stats.gprc; | ||
3657 | adapter->net_stats.tx_packets = adapter->stats.gptc; | ||
3658 | adapter->net_stats.rx_bytes = adapter->stats.gorcl; | ||
3659 | adapter->net_stats.tx_bytes = adapter->stats.gotcl; | ||
3660 | adapter->net_stats.multicast = adapter->stats.mprc; | 3656 | adapter->net_stats.multicast = adapter->stats.mprc; |
3661 | adapter->net_stats.collisions = adapter->stats.colc; | 3657 | adapter->net_stats.collisions = adapter->stats.colc; |
3662 | 3658 | ||
@@ -4032,6 +4028,8 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter, | |||
4032 | } | 4028 | } |
4033 | adapter->total_tx_bytes += total_tx_bytes; | 4029 | adapter->total_tx_bytes += total_tx_bytes; |
4034 | adapter->total_tx_packets += total_tx_packets; | 4030 | adapter->total_tx_packets += total_tx_packets; |
4031 | adapter->net_stats.tx_bytes += total_tx_bytes; | ||
4032 | adapter->net_stats.tx_packets += total_tx_packets; | ||
4035 | return cleaned; | 4033 | return cleaned; |
4036 | } | 4034 | } |
4037 | 4035 | ||
@@ -4254,6 +4252,8 @@ next_desc: | |||
4254 | 4252 | ||
4255 | adapter->total_rx_packets += total_rx_packets; | 4253 | adapter->total_rx_packets += total_rx_packets; |
4256 | adapter->total_rx_bytes += total_rx_bytes; | 4254 | adapter->total_rx_bytes += total_rx_bytes; |
4255 | adapter->net_stats.rx_bytes += total_rx_bytes; | ||
4256 | adapter->net_stats.rx_packets += total_rx_packets; | ||
4257 | return cleaned; | 4257 | return cleaned; |
4258 | } | 4258 | } |
4259 | 4259 | ||
@@ -4441,6 +4441,8 @@ next_desc: | |||
4441 | 4441 | ||
4442 | adapter->total_rx_packets += total_rx_packets; | 4442 | adapter->total_rx_packets += total_rx_packets; |
4443 | adapter->total_rx_bytes += total_rx_bytes; | 4443 | adapter->total_rx_bytes += total_rx_bytes; |
4444 | adapter->net_stats.rx_bytes += total_rx_bytes; | ||
4445 | adapter->net_stats.rx_packets += total_rx_packets; | ||
4444 | return cleaned; | 4446 | return cleaned; |
4445 | } | 4447 | } |
4446 | 4448 | ||