aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
authorJohannes Berg <johannes.berg@intel.com>2011-12-15 05:24:20 -0500
committerJohn W. Linville <linville@tuxdriver.com>2011-12-15 14:46:35 -0500
commit4d33960bf9fa2c0ee82ba7120e7b56c766dd3a86 (patch)
treeb75891edc02c3aa754a9fd32e34f408051e77983 /net/mac80211/ieee80211_i.h
parent8bf11d8d081106c3cce8281a0150e716f8ac5d22 (diff)
mac80211: reduce station management complexity
Now that IBSS no longer needs to insert stations from atomic context, we can get rid of all the special cases for that, and even get rid of the sta_lock (though it needs to stay as tim_lock.) This makes the station management code much more straight-forward. Signed-off-by: Johannes Berg <johannes.berg@intel.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r--net/mac80211/ieee80211_i.h11
1 files changed, 4 insertions, 7 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index eca6063e287c..8e5b892834bc 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -855,18 +855,15 @@ struct ieee80211_local {
855 855
856 /* Station data */ 856 /* Station data */
857 /* 857 /*
858 * The mutex only protects the list and counter, 858 * The mutex only protects the list, hash table and
859 * reads are done in RCU. 859 * counter, reads are done with RCU.
860 * Additionally, the lock protects the hash table,
861 * the pending list and each BSS's TIM bitmap.
862 */ 860 */
863 struct mutex sta_mtx; 861 struct mutex sta_mtx;
864 spinlock_t sta_lock; 862 spinlock_t tim_lock;
865 unsigned long num_sta; 863 unsigned long num_sta;
866 struct list_head sta_list, sta_pending_list; 864 struct list_head sta_list;
867 struct sta_info __rcu *sta_hash[STA_HASH_SIZE]; 865 struct sta_info __rcu *sta_hash[STA_HASH_SIZE];
868 struct timer_list sta_cleanup; 866 struct timer_list sta_cleanup;
869 struct work_struct sta_finish_work;
870 int sta_generation; 867 int sta_generation;
871 868
872 struct sk_buff_head pending[IEEE80211_MAX_QUEUES]; 869 struct sk_buff_head pending[IEEE80211_MAX_QUEUES];