Root/package/mac80211/patches/521-mac80211_ht_change_rate_update.patch

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

Archive Download this file



interactive