Date:2011-04-23 23:34:40 (12 years 11 months ago)
Author:nbd
Commit:4e1f633a68becea1ae04a78793a67f251ada9333
Message:mac80211: do rate control updates when the HT configuration changes on an interface

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@26750 3c298f89-4303-0410-b956-a3cf2f4a3e73
Files: package/mac80211/patches/560-mac80211_ht_change_rate_update.patch (1 diff)

Change Details

package/mac80211/patches/560-mac80211_ht_change_rate_update.patch
1--- a/net/mac80211/main.c
2@@ -245,7 +245,9 @@ void ieee80211_bss_info_change_notify(st
3                       u32 changed)
4 {
5     struct ieee80211_local *local = sdata->local;
6+ struct ieee80211_supported_band *sband;
7     static const u8 zero[ETH_ALEN] = { 0 };
8+ struct sta_info *sta;
9
10     if (!changed)
11         return;
12@@ -275,6 +277,22 @@ void ieee80211_bss_info_change_notify(st
13
14     switch (sdata->vif.type) {
15     case NL80211_IFTYPE_AP:
16+ if (!(changed & BSS_CHANGED_HT))
17+ break;
18+
19+ sband = local->hw.wiphy->bands[local->hw.conf.channel->band];
20+ rcu_read_lock();
21+ list_for_each_entry(sta, &local->sta_list, list) {
22+ if (sta->sdata != sdata &&
23+ (!sdata->bss || sta->sdata->bss != sdata->bss))
24+ continue;
25+
26+ rate_control_rate_update(local, sband, sta,
27+ IEEE80211_RC_HT_CHANGED,
28+ local->_oper_channel_type);
29+ }
30+ rcu_read_unlock();
31+ break;
32     case NL80211_IFTYPE_ADHOC:
33     case NL80211_IFTYPE_WDS:
34     case NL80211_IFTYPE_MESH_POINT:

Archive Download the corresponding diff file



interactive