diff --git a/[refs] b/[refs] index f700862738f7..4c1f7e7f68c5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 3f7c5c10e9dc6bf90179eb9f7c06151d508fb324 +refs/heads/master: 74e2bd1fa3ae9695af566ad5a7a288898787b909 diff --git a/trunk/net/mac80211/util.c b/trunk/net/mac80211/util.c index 3af439a85b33..c453226f06b2 100644 --- a/trunk/net/mac80211/util.c +++ b/trunk/net/mac80211/util.c @@ -1178,6 +1178,14 @@ int ieee80211_reconfig(struct ieee80211_local *local) } } + rcu_read_lock(); + if (hw->flags & IEEE80211_HW_AMPDU_AGGREGATION) { + list_for_each_entry_rcu(sta, &local->sta_list, list) { + ieee80211_sta_tear_down_BA_sessions(sta); + } + } + rcu_read_unlock(); + /* add back keys */ list_for_each_entry(sdata, &local->interfaces, list) if (ieee80211_sdata_running(sdata))