diff options
author | Helmut Schaa <helmut.schaa@googlemail.com> | 2009-07-25 17:25:51 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2009-07-29 15:46:07 -0400 |
commit | 0ee9c13c7c92581ab005d80795cf65897213b249 (patch) | |
tree | 835e48c69fc06f0f02f37635bce4267720224b5f /net/mac80211 | |
parent | c0b2bbd833a5a26b5a9425cb9a7eb66bbe736dd1 (diff) | |
download | op-kernel-dev-0ee9c13c7c92581ab005d80795cf65897213b249.zip op-kernel-dev-0ee9c13c7c92581ab005d80795cf65897213b249.tar.gz |
mac80211: fix an oops in ieee80211_scan_state_set_channel
Fix an oops in ieee80211_scan_state_set_channel which was triggered
if the last scanned channel was skipped (for example due to regulatory
restrictions) by returning to the decision state after each skipped
channel.
Signed-off-by: Helmut Schaa <helmut.schaa@googlemail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211')
-rw-r--r-- | net/mac80211/scan.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/net/mac80211/scan.c b/net/mac80211/scan.c index b376775..147772a 100644 --- a/net/mac80211/scan.c +++ b/net/mac80211/scan.c @@ -605,8 +605,11 @@ static void ieee80211_scan_state_set_channel(struct ieee80211_local *local, /* advance state machine to next channel/band */ local->scan_channel_idx++; - if (skip) + if (skip) { + /* if we skip this channel return to the decision state */ + local->next_scan_state = SCAN_DECISION; return; + } /* * Probe delay is used to update the NAV, cf. 11.1.3.2.2 |