mirror of https://gitee.com/openkylin/linux.git
mac80211: use IEEE80211_NUM_ACS
When comparing hw->queues to determine if the device is QoS capable, use IEEE80211_NUM_ACS instead of just 4. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
This commit is contained in:
parent
4644ae8903
commit
32c5057b22
|
@ -167,7 +167,7 @@ static void __ieee80211_sta_join_ibss(struct ieee80211_sub_if_data *sdata,
|
|||
chan, channel_type);
|
||||
}
|
||||
|
||||
if (local->hw.queues >= 4) {
|
||||
if (local->hw.queues >= IEEE80211_NUM_ACS) {
|
||||
pos = skb_put(skb, 9);
|
||||
*pos++ = WLAN_EID_VENDOR_SPECIFIC;
|
||||
*pos++ = 7; /* len */
|
||||
|
|
|
@ -676,7 +676,7 @@ static u16 ieee80211_monitor_select_queue(struct net_device *dev,
|
|||
struct ieee80211_hdr *hdr;
|
||||
struct ieee80211_radiotap_header *rtap = (void *)skb->data;
|
||||
|
||||
if (local->hw.queues < 4)
|
||||
if (local->hw.queues < IEEE80211_NUM_ACS)
|
||||
return 0;
|
||||
|
||||
if (skb->len < 4 ||
|
||||
|
|
|
@ -1134,7 +1134,7 @@ static void ieee80211_sta_wmm_params(struct ieee80211_local *local,
|
|||
if (!local->ops->conf_tx)
|
||||
return;
|
||||
|
||||
if (local->hw.queues < 4)
|
||||
if (local->hw.queues < IEEE80211_NUM_ACS)
|
||||
return;
|
||||
|
||||
if (!wmm_param)
|
||||
|
@ -3312,7 +3312,7 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata,
|
|||
/* Also disable HT if we don't support it or the AP doesn't use WMM */
|
||||
sband = local->hw.wiphy->bands[req->bss->channel->band];
|
||||
if (!sband->ht_cap.ht_supported ||
|
||||
local->hw.queues < 4 || !bss->wmm_used)
|
||||
local->hw.queues < IEEE80211_NUM_ACS || !bss->wmm_used)
|
||||
ifmgd->flags |= IEEE80211_STA_DISABLE_11N;
|
||||
|
||||
memcpy(&ifmgd->ht_capa, &req->ht_capa, sizeof(ifmgd->ht_capa));
|
||||
|
@ -3335,7 +3335,8 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata,
|
|||
ifmgd->ap_smps = ifmgd->req_smps;
|
||||
|
||||
assoc_data->capability = req->bss->capability;
|
||||
assoc_data->wmm = bss->wmm_used && (local->hw.queues >= 4);
|
||||
assoc_data->wmm = bss->wmm_used &&
|
||||
(local->hw.queues >= IEEE80211_NUM_ACS);
|
||||
assoc_data->supp_rates = bss->supp_rates;
|
||||
assoc_data->supp_rates_len = bss->supp_rates_len;
|
||||
assoc_data->ht_operation_ie =
|
||||
|
|
|
@ -1928,7 +1928,7 @@ netdev_tx_t ieee80211_subif_start_xmit(struct sk_buff *skb,
|
|||
wme_sta = true;
|
||||
|
||||
/* receiver and we are QoS enabled, use a QoS type frame */
|
||||
if (wme_sta && local->hw.queues >= 4) {
|
||||
if (wme_sta && local->hw.queues >= IEEE80211_NUM_ACS) {
|
||||
fc |= cpu_to_le16(IEEE80211_STYPE_QOS_DATA);
|
||||
hdrlen += 2;
|
||||
}
|
||||
|
|
|
@ -79,7 +79,7 @@ u16 ieee80211_select_queue_80211(struct ieee80211_local *local,
|
|||
{
|
||||
u8 *p;
|
||||
|
||||
if (local->hw.queues < 4)
|
||||
if (local->hw.queues < IEEE80211_NUM_ACS)
|
||||
return 0;
|
||||
|
||||
if (!ieee80211_is_data(hdr->frame_control)) {
|
||||
|
@ -106,7 +106,7 @@ u16 ieee80211_select_queue(struct ieee80211_sub_if_data *sdata,
|
|||
const u8 *ra = NULL;
|
||||
bool qos = false;
|
||||
|
||||
if (local->hw.queues < 4 || skb->len < 6) {
|
||||
if (local->hw.queues < IEEE80211_NUM_ACS || skb->len < 6) {
|
||||
skb->priority = 0; /* required for correct WPA/11i MIC */
|
||||
return 0;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue