aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2013-02-13 06:25:28 -0500
committerJohannes Berg <johannes.berg@intel.com>2013-03-18 15:15:05 -0400
commit445ea4e83ec50668cc9ad7e5cf96d242f19165e8 (patch)
tree1b6e6c909854358c03fd0047b9f441e0095460e3 /net/mac80211/ieee80211_i.h
parent39ecc01d1bbe3de2cf5f01a81e176ea5160d3b95 (diff)
mac80211: stop queues temporarily for flushing
Sometimes queues are flushed in the middle of operation, which can lead to driver issues. Stop queues temporarily, while flushing, to avoid transmitting new packets while they are being flushed. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r--net/mac80211/ieee80211_i.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index b96c0e977752..ae2d1754b792 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -809,6 +809,7 @@ enum queue_stop_reason {
809 IEEE80211_QUEUE_STOP_REASON_SUSPEND, 809 IEEE80211_QUEUE_STOP_REASON_SUSPEND,
810 IEEE80211_QUEUE_STOP_REASON_SKB_ADD, 810 IEEE80211_QUEUE_STOP_REASON_SKB_ADD,
811 IEEE80211_QUEUE_STOP_REASON_OFFCHANNEL, 811 IEEE80211_QUEUE_STOP_REASON_OFFCHANNEL,
812 IEEE80211_QUEUE_STOP_REASON_FLUSH,
812}; 813};
813 814
814#ifdef CONFIG_MAC80211_LEDS 815#ifdef CONFIG_MAC80211_LEDS
@@ -1522,8 +1523,10 @@ void ieee80211_sta_tx_notify(struct ieee80211_sub_if_data *sdata,
1522 struct ieee80211_hdr *hdr, bool ack); 1523 struct ieee80211_hdr *hdr, bool ack);
1523 1524
1524void ieee80211_wake_queues_by_reason(struct ieee80211_hw *hw, 1525void ieee80211_wake_queues_by_reason(struct ieee80211_hw *hw,
1526 unsigned long queues,
1525 enum queue_stop_reason reason); 1527 enum queue_stop_reason reason);
1526void ieee80211_stop_queues_by_reason(struct ieee80211_hw *hw, 1528void ieee80211_stop_queues_by_reason(struct ieee80211_hw *hw,
1529 unsigned long queues,
1527 enum queue_stop_reason reason); 1530 enum queue_stop_reason reason);
1528void ieee80211_wake_queue_by_reason(struct ieee80211_hw *hw, int queue, 1531void ieee80211_wake_queue_by_reason(struct ieee80211_hw *hw, int queue,
1529 enum queue_stop_reason reason); 1532 enum queue_stop_reason reason);