summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2012-07-26 14:31:19 +0200
committerJohannes Berg <johannes.berg@intel.com>2012-08-20 14:13:43 +0200
commit4797c7ba93e4049cdda18045c01bbe563aafff69 (patch)
tree405d1a9c9571f0435eec8b67e3bc7deb72f68a68
parent3d01be72e6fe372a0602221090707a1f04c44646 (diff)
downloadlinux-stable-4797c7ba93e4049cdda18045c01bbe563aafff69.tar.gz
linux-stable-4797c7ba93e4049cdda18045c01bbe563aafff69.tar.bz2
linux-stable-4797c7ba93e4049cdda18045c01bbe563aafff69.zip
mac80211: use RX status band instead of current band
Even for single-channel devices it is possible that we switch the channel temporarily (e.g. for scanning) but while doing so process a received frame that was still received on the old channel, so checking the current band is racy. Use the band from status instead. Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r--net/mac80211/rx.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/net/mac80211/rx.c b/net/mac80211/rx.c
index f5258ebc15be..b382605c5733 100644
--- a/net/mac80211/rx.c
+++ b/net/mac80211/rx.c
@@ -2308,7 +2308,7 @@ ieee80211_rx_h_action(struct ieee80211_rx_data *rx)
goto queue;
case WLAN_CATEGORY_SPECTRUM_MGMT:
- if (local->hw.conf.channel->band != IEEE80211_BAND_5GHZ)
+ if (status->band != IEEE80211_BAND_5GHZ)
break;
if (sdata->vif.type != NL80211_IFTYPE_STATION)