aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAuke Kok <auke-jan.h.kok@intel.com>2007-11-13 23:49:15 -0500
committerDavid S. Miller <davem@davemloft.net>2008-01-28 18:03:49 -0500
commitef90e4eca9fcade05dd03f853df75cf459a75422 (patch)
tree1285956c5b0d31ac19ff561f08e826c5915963f2
parent419886927796dfeca87c1fd11d1fe2ed442103cc (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.c10
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