diff options
author | Felix Fietkau <nbd@openwrt.org> | 2012-09-25 16:20:30 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2012-09-25 16:20:30 +0000 |
commit | 4b5bbd82d1a70d85a8ca47561d6ed41ebd30ef69 (patch) | |
tree | abcc00002cf47555167041570860843f266eabf4 | |
parent | c4ed9131ee8991d217d6140fa409e7e056fb929b (diff) | |
download | upstream-4b5bbd82d1a70d85a8ca47561d6ed41ebd30ef69.tar.gz upstream-4b5bbd82d1a70d85a8ca47561d6ed41ebd30ef69.tar.bz2 upstream-4b5bbd82d1a70d85a8ca47561d6ed41ebd30ef69.zip |
mac80211: avoid sending useless delBA frames on client disassoc
SVN-Revision: 33551
-rw-r--r-- | package/mac80211/patches/300-pending_work.patch | 31 |
1 files changed, 31 insertions, 0 deletions
diff --git a/package/mac80211/patches/300-pending_work.patch b/package/mac80211/patches/300-pending_work.patch index 51383a667f..1e25e352ca 100644 --- a/package/mac80211/patches/300-pending_work.patch +++ b/package/mac80211/patches/300-pending_work.patch @@ -40,6 +40,15 @@ sdata->vif.type != NL80211_IFTYPE_ADHOC) return -EINVAL; +@@ -869,7 +871,7 @@ void ieee80211_process_addba_resp(struct + + } else { + ___ieee80211_stop_tx_ba_session(sta, tid, WLAN_BACK_INITIATOR, +- true); ++ false); + } + + out: --- a/net/mac80211/debugfs_sta.c +++ b/net/mac80211/debugfs_sta.c @@ -63,11 +63,11 @@ static ssize_t sta_flags_read(struct fil @@ -375,3 +384,25 @@ rfilt |= ATH9K_RX_FILTER_PROM; rfilt |= ATH9K_RX_FILTER_MCAST_BCAST_ALL; } +--- a/net/mac80211/mlme.c ++++ b/net/mac80211/mlme.c +@@ -1390,7 +1390,7 @@ static void ieee80211_set_disassoc(struc + sta = sta_info_get(sdata, ifmgd->bssid); + if (sta) { + set_sta_flag(sta, WLAN_STA_BLOCK_BA); +- ieee80211_sta_tear_down_BA_sessions(sta, tx); ++ ieee80211_sta_tear_down_BA_sessions(sta, false); + } + mutex_unlock(&local->sta_mtx); + +--- a/net/mac80211/sta_info.c ++++ b/net/mac80211/sta_info.c +@@ -674,7 +674,7 @@ int __must_check __sta_info_destroy(stru + * will be sufficient. + */ + set_sta_flag(sta, WLAN_STA_BLOCK_BA); +- ieee80211_sta_tear_down_BA_sessions(sta, true); ++ ieee80211_sta_tear_down_BA_sessions(sta, false); + + ret = sta_info_hash_del(local, sta); + if (ret) |