diff options
author | Johannes Berg <johannes@sipsolutions.net> | 2009-02-10 15:25:52 -0500 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-02-13 13:45:44 -0500 |
commit | 2dace10efb8b761ccbd18d524f3b14d823edf8c0 (patch) | |
tree | eb067b3081a33bcf3c7cb2b896ac4d844fce2d3e | |
parent | 55687e380a3965ac448e03281e027553a6ae6dac (diff) |
mac80211: clean up BA session teardown
The sta_info pointer can very well be passed to
ieee80211_sta_tear_down_BA_sessions, this will
later allow us to pass it through even further.
Signed-off-by: Johannes Berg <johannes@sipsolutions.net>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
-rw-r--r-- | net/mac80211/ht.c | 8 | ||||
-rw-r--r-- | net/mac80211/ieee80211_i.h | 2 | ||||
-rw-r--r-- | net/mac80211/iface.c | 3 | ||||
-rw-r--r-- | net/mac80211/mlme.c | 2 |
4 files changed, 7 insertions, 8 deletions
diff --git a/net/mac80211/ht.c b/net/mac80211/ht.c index a49a8a5828bf..1b503f3cc54c 100644 --- a/net/mac80211/ht.c +++ b/net/mac80211/ht.c | |||
@@ -153,15 +153,15 @@ u32 ieee80211_enable_ht(struct ieee80211_sub_if_data *sdata, | |||
153 | return changed; | 153 | return changed; |
154 | } | 154 | } |
155 | 155 | ||
156 | void ieee80211_sta_tear_down_BA_sessions(struct ieee80211_sub_if_data *sdata, u8 *addr) | 156 | void ieee80211_sta_tear_down_BA_sessions(struct sta_info *sta) |
157 | { | 157 | { |
158 | struct ieee80211_local *local = sdata->local; | 158 | struct ieee80211_local *local = sta->local; |
159 | int i; | 159 | int i; |
160 | 160 | ||
161 | for (i = 0; i < STA_TID_NUM; i++) { | 161 | for (i = 0; i < STA_TID_NUM; i++) { |
162 | ieee80211_stop_tx_ba_session(&local->hw, addr, i, | 162 | ieee80211_stop_tx_ba_session(&local->hw, sta->sta.addr, i, |
163 | WLAN_BACK_INITIATOR); | 163 | WLAN_BACK_INITIATOR); |
164 | ieee80211_sta_stop_rx_ba_session(sdata, addr, i, | 164 | ieee80211_sta_stop_rx_ba_session(sta->sdata, sta->sta.addr, i, |
165 | WLAN_BACK_RECIPIENT, | 165 | WLAN_BACK_RECIPIENT, |
166 | WLAN_REASON_QSTA_LEAVE_QBSS); | 166 | WLAN_REASON_QSTA_LEAVE_QBSS); |
167 | } | 167 | } |
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h index 6987dfa41c7f..c6858ecde312 100644 --- a/net/mac80211/ieee80211_i.h +++ b/net/mac80211/ieee80211_i.h | |||
@@ -993,7 +993,7 @@ void ieee80211_send_delba(struct ieee80211_sub_if_data *sdata, | |||
993 | 993 | ||
994 | void ieee80211_sta_stop_rx_ba_session(struct ieee80211_sub_if_data *sdata, u8 *da, | 994 | void ieee80211_sta_stop_rx_ba_session(struct ieee80211_sub_if_data *sdata, u8 *da, |
995 | u16 tid, u16 initiator, u16 reason); | 995 | u16 tid, u16 initiator, u16 reason); |
996 | void ieee80211_sta_tear_down_BA_sessions(struct ieee80211_sub_if_data *sdata, u8 *addr); | 996 | void ieee80211_sta_tear_down_BA_sessions(struct sta_info *sta); |
997 | void ieee80211_process_delba(struct ieee80211_sub_if_data *sdata, | 997 | void ieee80211_process_delba(struct ieee80211_sub_if_data *sdata, |
998 | struct sta_info *sta, | 998 | struct sta_info *sta, |
999 | struct ieee80211_mgmt *mgmt, size_t len); | 999 | struct ieee80211_mgmt *mgmt, size_t len); |
diff --git a/net/mac80211/iface.c b/net/mac80211/iface.c index 915d04323a32..1c17fb8e4058 100644 --- a/net/mac80211/iface.c +++ b/net/mac80211/iface.c | |||
@@ -362,8 +362,7 @@ static int ieee80211_stop(struct net_device *dev) | |||
362 | 362 | ||
363 | list_for_each_entry_rcu(sta, &local->sta_list, list) { | 363 | list_for_each_entry_rcu(sta, &local->sta_list, list) { |
364 | if (sta->sdata == sdata) | 364 | if (sta->sdata == sdata) |
365 | ieee80211_sta_tear_down_BA_sessions(sdata, | 365 | ieee80211_sta_tear_down_BA_sessions(sta); |
366 | sta->sta.addr); | ||
367 | } | 366 | } |
368 | 367 | ||
369 | rcu_read_unlock(); | 368 | rcu_read_unlock(); |
diff --git a/net/mac80211/mlme.c b/net/mac80211/mlme.c index 169f10c51042..bfc47b330687 100644 --- a/net/mac80211/mlme.c +++ b/net/mac80211/mlme.c | |||
@@ -954,7 +954,7 @@ static void ieee80211_set_disassoc(struct ieee80211_sub_if_data *sdata, | |||
954 | netif_tx_stop_all_queues(sdata->dev); | 954 | netif_tx_stop_all_queues(sdata->dev); |
955 | netif_carrier_off(sdata->dev); | 955 | netif_carrier_off(sdata->dev); |
956 | 956 | ||
957 | ieee80211_sta_tear_down_BA_sessions(sdata, sta->sta.addr); | 957 | ieee80211_sta_tear_down_BA_sessions(sta); |
958 | 958 | ||
959 | if (self_disconnected) { | 959 | if (self_disconnected) { |
960 | if (deauth) | 960 | if (deauth) |