diff options
author | Johannes Berg <johannes.berg@intel.com> | 2015-05-11 14:01:36 +0200 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2015-05-11 14:01:36 +0200 |
commit | 96a4688edb5e638a9f81c787c031bbdbfa291527 (patch) | |
tree | bcbb05910c55488a9a2f65cca962ee62ae7cf290 /net/mac80211 | |
parent | bf45a24243eb0673f52eaaac620617601e484f07 (diff) | |
download | linux-96a4688edb5e638a9f81c787c031bbdbfa291527.tar.gz linux-96a4688edb5e638a9f81c787c031bbdbfa291527.tar.bz2 linux-96a4688edb5e638a9f81c787c031bbdbfa291527.zip |
mac80211: check fast-xmit if IBSS STA QoS changed
When an IBSS station gets QoS enabled after having been added,
check fast-xmit to make sure the QoS header gets added to the
cache properly and frames can go out with QoS and higher rates.
Reported-by: Janusz Dziedzic <janusz.dziedzic@tieto.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/ibss.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/mac80211/ibss.c b/net/mac80211/ibss.c index bfef1b215050..21716af8bec3 100644 --- a/net/mac80211/ibss.c +++ b/net/mac80211/ibss.c @@ -1031,8 +1031,11 @@ static void ieee80211_update_sta_info(struct ieee80211_sub_if_data *sdata, } } - if (sta && elems->wmm_info && local->hw.queues >= IEEE80211_NUM_ACS) + if (sta && !sta->sta.wme && + elems->wmm_info && local->hw.queues >= IEEE80211_NUM_ACS) { sta->sta.wme = true; + ieee80211_check_fast_xmit(sta); + } if (sta && elems->ht_operation && elems->ht_cap_elem && sdata->u.ibss.chandef.width != NL80211_CHAN_WIDTH_20_NOHT && |