diff options
author | Johannes Berg <johannes.berg@intel.com> | 2011-11-29 10:20:02 +0100 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2011-11-30 15:08:31 -0500 |
commit | e76aadc572288a158ae18ae1c10fe395c7bca066 (patch) | |
tree | 82c3e5a961039826c31b944d1f27f488743f9d8b /net/mac80211/main.c | |
parent | 742c29fd5bcd73f14facd6c7f3912c5ab66739ed (diff) | |
download | linux-e76aadc572288a158ae18ae1c10fe395c7bca066.tar.gz linux-e76aadc572288a158ae18ae1c10fe395c7bca066.tar.bz2 linux-e76aadc572288a158ae18ae1c10fe395c7bca066.zip |
mac80211: revert on-channel work optimisations
The on-channel work optimisations have caused a
number of issues, and the code is unfortunately
very complex and almost impossible to follow.
Instead of attempting to put in more workarounds
let's just remove those optimisations, we can
work on them again later, after we change the
whole auth/assoc design.
This should fix rate_control_send_low() warnings,
see RH bug 731365.
Cc: stable@vger.kernel.org
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/main.c')
-rw-r--r-- | net/mac80211/main.c | 41 |
1 files changed, 0 insertions, 41 deletions
diff --git a/net/mac80211/main.c b/net/mac80211/main.c index dddedfad5404..944bed35d923 100644 --- a/net/mac80211/main.c +++ b/net/mac80211/main.c @@ -92,47 +92,6 @@ static void ieee80211_reconfig_filter(struct work_struct *work) ieee80211_configure_filter(local); } -/* - * Returns true if we are logically configured to be on - * the operating channel AND the hardware-conf is currently - * configured on the operating channel. Compares channel-type - * as well. - */ -bool ieee80211_cfg_on_oper_channel(struct ieee80211_local *local) -{ - struct ieee80211_channel *chan; - enum nl80211_channel_type channel_type; - - /* This logic needs to match logic in ieee80211_hw_config */ - if (local->scan_channel) { - chan = local->scan_channel; - /* If scanning on oper channel, use whatever channel-type - * is currently in use. - */ - if (chan == local->oper_channel) - channel_type = local->_oper_channel_type; - else - channel_type = NL80211_CHAN_NO_HT; - } else if (local->tmp_channel) { - chan = local->tmp_channel; - channel_type = local->tmp_channel_type; - } else { - chan = local->oper_channel; - channel_type = local->_oper_channel_type; - } - - if (chan != local->oper_channel || - channel_type != local->_oper_channel_type) - return false; - - /* Check current hardware-config against oper_channel. */ - if (local->oper_channel != local->hw.conf.channel || - local->_oper_channel_type != local->hw.conf.channel_type) - return false; - - return true; -} - int ieee80211_hw_config(struct ieee80211_local *local, u32 changed) { struct ieee80211_channel *chan; |