Commit c53f7e15 authored by Eliad Peller's avatar Eliad Peller Committed by John W. Linville

mac80211: use offchannel queue only when supported

Commit 3a25a8c8 ("mac80211: add improved HW queue control")
added support for offchannel queue mapping. However, this
mapping is only valid when the driver supports
IEEE80211_HW_QUEUE_CONTROL.

Check whether the driver supports IEEE80211_HW_QUEUE_CONTROL
before setting the hw_queue to the mapped offchannel queue.

(This patch doesn't have any actual effect, because
hw_queue is overridden in ieee80211_tx() anyway,
so this is merely some cleanup)
Signed-off-by: default avatarEliad Peller <eliad@wizery.com>
Acked-by: default avatarJohannes Berg <johannes@sipsolutions.net>
Signed-off-by: default avatarJohn W. Linville <linville@tuxdriver.com>
parent 72d78728
...@@ -2304,7 +2304,8 @@ static int ieee80211_mgmt_tx(struct wiphy *wiphy, struct net_device *dev, ...@@ -2304,7 +2304,8 @@ static int ieee80211_mgmt_tx(struct wiphy *wiphy, struct net_device *dev,
IEEE80211_SKB_CB(skb)->flags = flags; IEEE80211_SKB_CB(skb)->flags = flags;
if (flags & IEEE80211_TX_CTL_TX_OFFCHAN) if (local->hw.flags & IEEE80211_HW_QUEUE_CONTROL &&
flags & IEEE80211_TX_CTL_TX_OFFCHAN)
IEEE80211_SKB_CB(skb)->hw_queue = IEEE80211_SKB_CB(skb)->hw_queue =
local->hw.offchannel_tx_hw_queue; local->hw.offchannel_tx_hw_queue;
...@@ -2349,6 +2350,7 @@ static int ieee80211_mgmt_tx(struct wiphy *wiphy, struct net_device *dev, ...@@ -2349,6 +2350,7 @@ static int ieee80211_mgmt_tx(struct wiphy *wiphy, struct net_device *dev,
/* modify cookie to prevent API mismatches */ /* modify cookie to prevent API mismatches */
*cookie ^= 2; *cookie ^= 2;
IEEE80211_SKB_CB(skb)->flags |= IEEE80211_TX_CTL_TX_OFFCHAN; IEEE80211_SKB_CB(skb)->flags |= IEEE80211_TX_CTL_TX_OFFCHAN;
if (local->hw.flags & IEEE80211_HW_QUEUE_CONTROL)
IEEE80211_SKB_CB(skb)->hw_queue = IEEE80211_SKB_CB(skb)->hw_queue =
local->hw.offchannel_tx_hw_queue; local->hw.offchannel_tx_hw_queue;
local->hw_roc_skb = skb; local->hw_roc_skb = skb;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment