diff options
author | Johannes Berg <johannes.berg@intel.com> | 2012-12-13 17:42:30 +0100 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-01-03 13:01:35 +0100 |
commit | 8a61af65c6d03781015315dbc43d0942a5b31db9 (patch) | |
tree | 624695ba646281508490cb1737fb69d8174fa87a /include | |
parent | 529ba6e9313dbe60dab7e72c6fdf647a012e9f5b (diff) | |
download | linux-8a61af65c6d03781015315dbc43d0942a5b31db9.tar.gz linux-8a61af65c6d03781015315dbc43d0942a5b31db9.tar.bz2 linux-8a61af65c6d03781015315dbc43d0942a5b31db9.zip |
mac80211: fix channel context iteration
During suspend/resume channel contexts might be
iterated even if they haven't been re-added to
the driver, keep track of this and skip them in
iteration. Also use the new status for sanity
checks.
Also clarify the fact that during HW restart all
contexts are iterated over (thanks Eliad.)
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'include')
-rw-r--r-- | include/net/mac80211.h | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/include/net/mac80211.h b/include/net/mac80211.h index ee50c5eba50c..0978b0faa880 100644 --- a/include/net/mac80211.h +++ b/include/net/mac80211.h @@ -3754,6 +3754,11 @@ void ieee80211_iter_keys(struct ieee80211_hw *hw, * The iterator will not find a context that's being added (during * the driver callback to add it) but will find it while it's being * removed. + * + * Note that during hardware restart, all contexts that existed + * before the restart are considered already present so will be + * found while iterating, whether they've been re-added already + * or not. */ void ieee80211_iter_chan_contexts_atomic( struct ieee80211_hw *hw, |