aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/ieee80211_i.h
diff options
context:
space:
mode:
authorThomas Pedersen <thomas@cozybit.com>2013-02-14 14:20:13 -0500
committerJohannes Berg <johannes.berg@intel.com>2013-02-15 03:41:40 -0500
commit2b5e19677592c167d012c2d129407f39d2bdeb8d (patch)
treedb898021baebc1b462b78d00048d0cf9ef3f0aa8 /net/mac80211/ieee80211_i.h
parent4a3cb702b05868f67c4ee3da3380461c5b90b4ca (diff)
mac80211: cache mesh beacon
Previously, the entire mesh beacon would be generated each time the beacon timer fired. Instead generate a beacon head and tail (so the TIM can easily be inserted when mesh power save is on) when starting a mesh or the MBSS parameters change. Also add a mutex for protecting beacon updates and preventing leaks. Signed-off-by: Thomas Pedersen <thomas@cozybit.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
Diffstat (limited to 'net/mac80211/ieee80211_i.h')
-rw-r--r--net/mac80211/ieee80211_i.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/net/mac80211/ieee80211_i.h b/net/mac80211/ieee80211_i.h
index d702f7dc321b..388580a1bada 100644
--- a/net/mac80211/ieee80211_i.h
+++ b/net/mac80211/ieee80211_i.h
@@ -580,6 +580,9 @@ struct ieee80211_if_mesh {
580 u32 mesh_seqnum; 580 u32 mesh_seqnum;
581 bool accepting_plinks; 581 bool accepting_plinks;
582 int num_gates; 582 int num_gates;
583 struct beacon_data __rcu *beacon;
584 /* just protects beacon updates for now */
585 struct mutex mtx;
583 const u8 *ie; 586 const u8 *ie;
584 u8 ie_len; 587 u8 ie_len;
585 enum { 588 enum {