From: Alexander Bondar Date: Tue, 2 Apr 2013 12:30:14 +0000 (+0300) Subject: mac80211: disable uAPSD if all ACs are under ACM X-Git-Url: http://drtracing.org/?a=commitdiff_plain;h=24aa11ab8ae03292d38ec0dbd9bc2ac49fe8a6dd;p=deliverable%2Flinux.git mac80211: disable uAPSD if all ACs are under ACM It's unlikely that an AP requires WMM mandatory admission control for all access categories, and if it does then we still transmit on the background AC without requesting admission. However, avoid using uAPSD in this case since the implementation could run into issues and might use other ACs etc. Signed-off-by: Alexander Bondar Signed-off-by: Johannes Berg --- diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 304d6cfc6250..43bfa8199811 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c @@ -4086,7 +4086,8 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata, rcu_read_unlock(); if (bss->wmm_used && bss->uapsd_supported && - (sdata->local->hw.flags & IEEE80211_HW_SUPPORTS_UAPSD)) { + (sdata->local->hw.flags & IEEE80211_HW_SUPPORTS_UAPSD) && + sdata->wmm_acm != 0xff) { assoc_data->uapsd = true; ifmgd->flags |= IEEE80211_STA_UAPSD_ENABLED; } else {