aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211
diff options
context:
space:
mode:
authorThomas Pedersen <thomas@cozybit.com>2012-04-18 19:24:13 -0700
committerJohn W. Linville <linville@tuxdriver.com>2012-04-23 15:34:07 -0400
commite76781e48f969e044d318485274b9574f1ccc3dd (patch)
tree4d1e496a3a466aa73a620ec54bbb309d5ffe0e6f /net/mac80211
parentmac80211: refactor mesh peer rate handling (diff)
downloadlinux-dev-e76781e48f969e044d318485274b9574f1ccc3dd.tar.xz
linux-dev-e76781e48f969e044d318485274b9574f1ccc3dd.zip
mac80211: don't set mesh peer ht caps if ht disabled
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>
Diffstat (limited to 'net/mac80211')
-rw-r--r--net/mac80211/mesh_plink.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/net/mac80211/mesh_plink.c b/net/mac80211/mesh_plink.c
index c2af7b3d03cd..1ff2a5c63e43 100644
--- a/net/mac80211/mesh_plink.c
+++ b/net/mac80211/mesh_plink.c
@@ -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);