aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/net/bna/bnad_ethtool.c
diff options
context:
space:
mode:
authorRasesh Mody <rmody@brocade.com>2010-12-23 16:45:05 -0500
committerDavid S. Miller <davem@davemloft.net>2010-12-25 22:16:01 -0500
commitf7c0fa4cd5dcf58dd95b216d2c33444a3b4a44e0 (patch)
tree5836683f415a5806ffccfbb16bac2ede9980587d /drivers/net/bna/bnad_ethtool.c
parent886f7fedb0cee56acca7620d89186669273d3d56 (diff)
bna: Fix for TX queue
Change Details: - Call netif_wake_queue() if we have freed up sufficient elements at the end of completion processing - Add netif_queue_stopped counter back to bnad_drv_stats {} - Get netif_queue_stopped value from stack - Remove BUG_ON() on value returned by pci_unmap_addr() Signed-off-by: Debashis Dutt <ddutt@brocade.com> Signed-off-by: Rasesh Mody <rmody@brocade.com> Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bna/bnad_ethtool.c')
-rw-r--r--drivers/net/bna/bnad_ethtool.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/drivers/net/bna/bnad_ethtool.c b/drivers/net/bna/bnad_ethtool.c
index 3011110c202..99be5ae9199 100644
--- a/drivers/net/bna/bnad_ethtool.c
+++ b/drivers/net/bna/bnad_ethtool.c
@@ -68,6 +68,7 @@ static char *bnad_net_stats_strings[BNAD_ETHTOOL_STATS_NUM] = {
68 68
69 "netif_queue_stop", 69 "netif_queue_stop",
70 "netif_queue_wakeup", 70 "netif_queue_wakeup",
71 "netif_queue_stopped",
71 "tso4", 72 "tso4",
72 "tso6", 73 "tso6",
73 "tso_err", 74 "tso_err",
@@ -1180,6 +1181,9 @@ bnad_get_ethtool_stats(struct net_device *netdev, struct ethtool_stats *stats,
1180 1181
1181 bi = sizeof(*net_stats64) / sizeof(u64); 1182 bi = sizeof(*net_stats64) / sizeof(u64);
1182 1183
1184 /* Get netif_queue_stopped from stack */
1185 bnad->stats.drv_stats.netif_queue_stopped = netif_queue_stopped(netdev);
1186
1183 /* Fill driver stats into ethtool buffers */ 1187 /* Fill driver stats into ethtool buffers */
1184 stats64 = (u64 *)&bnad->stats.drv_stats; 1188 stats64 = (u64 *)&bnad->stats.drv_stats;
1185 for (i = 0; i < sizeof(struct bnad_drv_stats) / sizeof(u64); i++) 1189 for (i = 0; i < sizeof(struct bnad_drv_stats) / sizeof(u64); i++)