OSDN Git Service

mac80211: don't set mesh peer ht caps if ht disabled
authorThomas Pedersen <thomas@cozybit.com>
Thu, 19 Apr 2012 02:24:13 +0000 (19:24 -0700)
committerJohn W. Linville <linville@tuxdriver.com>
Mon, 23 Apr 2012 19:34:07 +0000 (15:34 -0400)
Blindly setting ht caps on a mesh peer's station entry would result in
MCS rates being used by the rate control algorithm even if no ht had
been configured. Fix this by checking the channel type before assigning
ht capabilites.

Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
net/mac80211/mesh_plink.c

index c2af7b3..1ff2a5c 100644 (file)
@@ -295,7 +295,8 @@ static struct sta_info *mesh_peer_init(struct ieee80211_sub_if_data *sdata,
        spin_lock_bh(&sta->lock);
        sta->last_rx = jiffies;
        sta->sta.supp_rates[band] = rates;
-       if (elems->ht_cap_elem)
+       if (elems->ht_cap_elem &&
+           sdata->local->_oper_channel_type != NL80211_CHAN_NO_HT)
                ieee80211_ht_cap_ie_to_sta_ht_cap(sdata, sband,
                                                  elems->ht_cap_elem,
                                                  &sta->sta.ht_cap);