iwlagn: fix iwl_is_any_associated
authorJohannes Berg <johannes.berg@intel.com>
Fri, 6 May 2011 18:11:20 +0000 (11:11 -0700)
committerSteve Conklin <sconklin@canonical.com>
Fri, 15 Jul 2011 17:20:49 +0000 (12:20 -0500)
commit2b4208383d114d202d38eb3b04ff7b844de8eefa
treeeed3bd5d4ec2458765fb6368f142ebc21f3a58b5
parent6382d90f38a9a92b683b1e58f8e714794b073dd0
iwlagn: fix iwl_is_any_associated

BugLink: http://bugs.launchpad.net/bugs/793702

commit 054ec924944912413e4ee927b8cf02f476d08783 upstream.

The function iwl_is_any_associated() was intended
to check both contexts, but due to an oversight
it only checks the BSS context. This leads to a
problem with scanning since the passive dwell
time isn't restricted appropriately and a scan
that includes passive channels will never finish
if only the PAN context is associated since the
default dwell time of 120ms won't fit into the
normal 100 TU DTIM interval.

Fix the function by using for_each_context() and
also reorganise the other functions a bit to take
advantage of each other making the code easier to
read.

Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Signed-off-by: Wey-Yi Guy <wey-yi.w.guy@intel.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Signed-off-by: Tim Gardner <tim.gardner@canonical.com>
drivers/net/wireless/iwlwifi/iwl-dev.h