From: Johannes Berg <[email protected]>

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 <[email protected]>
Signed-off-by: Johannes Berg <[email protected]>
---
 net/mac80211/ibss.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

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 &&
-- 
2.1.4

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to