aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/e1000/e1000_main.c
diff options
context:
space:
mode:
authorJesse Brandeburg <jesse.brandeburg@intel.com>2006-11-01 11:47:59 -0500
committerJeff Garzik <jeff@garzik.org>2006-12-02 00:12:00 -0500
commitfcfb1224250d7877b6a6c6a947986e08b2160fb6 (patch)
treeb87742a5b484dcbba418b055337a7f14b2e272dc /drivers/net/e1000/e1000_main.c
parentfc2307d00c15385fbdbb5928a8517e5f63c3d068 (diff)
e1000: add queue restart counter
Add a netif_wake/start_queue counter to the ethtool statistics to indicated to the user that their transmit ring could be too small for their workload. Signed-off-by: Jesse brandeburg <jesse.brandeburg@intel.com> Cc: Jamal Hadi <hadi@cyberus.ca> Signed-off-by: Auke Kok <auke-jan.h.kok@intel.com>
Diffstat (limited to 'drivers/net/e1000/e1000_main.c')
-rw-r--r--drivers/net/e1000/e1000_main.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/drivers/net/e1000/e1000_main.c b/drivers/net/e1000/e1000_main.c
index 96e44a825443..705e654c368a 100644
--- a/drivers/net/e1000/e1000_main.c
+++ b/drivers/net/e1000/e1000_main.c
@@ -2974,6 +2974,7 @@ static int __e1000_maybe_stop_tx(struct net_device *netdev, int size)
2974 2974
2975 /* A reprieve! */ 2975 /* A reprieve! */
2976 netif_start_queue(netdev); 2976 netif_start_queue(netdev);
2977 ++adapter->restart_queue;
2977 return 0; 2978 return 0;
2978} 2979}
2979 2980
@@ -3654,8 +3655,10 @@ e1000_clean_tx_irq(struct e1000_adapter *adapter,
3654 * sees the new next_to_clean. 3655 * sees the new next_to_clean.
3655 */ 3656 */
3656 smp_mb(); 3657 smp_mb();
3657 if (netif_queue_stopped(netdev)) 3658 if (netif_queue_stopped(netdev)) {
3658 netif_wake_queue(netdev); 3659 netif_wake_queue(netdev);
3660 ++adapter->restart_queue;
3661 }
3659 } 3662 }
3660 3663
3661 if (adapter->detect_tx_hung) { 3664 if (adapter->detect_tx_hung) {