]> git.karo-electronics.de Git - karo-tx-linux.git/commitdiff
mac80211: use wake_queue to restart trasmit
authorRajkumar Manoharan <rmanoharan@atheros.com>
Fri, 29 Apr 2011 09:18:45 +0000 (14:48 +0530)
committerGreg Kroah-Hartman <gregkh@suse.de>
Fri, 3 Jun 2011 00:31:46 +0000 (09:31 +0900)
commit 470ab2a23b453518ac86937572b4531d8925ca55 upstream.

netif_tx_start_all_queues is used to allow the upper layer
to transmit frames but it does not restart transmission.
To restart the trasmission use netif_tx_wake_all_queues.
Not doing so, sometimes stalls the transmission and the
application has to be restarted to proceed further.

This issue was originally found while sending udp traffic
in higer bandwidth in open environment without bgscan.

Signed-off-by: Rajkumar Manoharan <rmanoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
net/mac80211/mlme.c

index 64d92d5a7f40e93c001dabf3bc9680d0adfab4e5..7ffcb55009c4aaaf68a56cf7d985751330e63004 100644 (file)
@@ -789,7 +789,7 @@ void ieee80211_dynamic_ps_enable_work(struct work_struct *work)
                ieee80211_hw_config(local, IEEE80211_CONF_CHANGE_PS);
        }
 
-       netif_tx_start_all_queues(sdata->dev);
+       netif_tx_wake_all_queues(sdata->dev);
 }
 
 void ieee80211_dynamic_ps_timer(unsigned long data)