diff options
Diffstat (limited to 'net/mac80211/mesh.h')
-rw-r--r-- | net/mac80211/mesh.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/net/mac80211/mesh.h b/net/mac80211/mesh.h index 8b26858ab4d5..574c3891c4b2 100644 --- a/net/mac80211/mesh.h +++ b/net/mac80211/mesh.h | |||
@@ -70,6 +70,7 @@ enum mesh_deferred_task_flags { | |||
70 | * @dst: mesh path destination mac address | 70 | * @dst: mesh path destination mac address |
71 | * @mpp: mesh proxy mac address | 71 | * @mpp: mesh proxy mac address |
72 | * @rhash: rhashtable list pointer | 72 | * @rhash: rhashtable list pointer |
73 | * @walk_list: linked list containing all mesh_path objects. | ||
73 | * @gate_list: list pointer for known gates list | 74 | * @gate_list: list pointer for known gates list |
74 | * @sdata: mesh subif | 75 | * @sdata: mesh subif |
75 | * @next_hop: mesh neighbor to which frames for this destination will be | 76 | * @next_hop: mesh neighbor to which frames for this destination will be |
@@ -106,6 +107,7 @@ struct mesh_path { | |||
106 | u8 dst[ETH_ALEN]; | 107 | u8 dst[ETH_ALEN]; |
107 | u8 mpp[ETH_ALEN]; /* used for MPP or MAP */ | 108 | u8 mpp[ETH_ALEN]; /* used for MPP or MAP */ |
108 | struct rhash_head rhash; | 109 | struct rhash_head rhash; |
110 | struct hlist_node walk_list; | ||
109 | struct hlist_node gate_list; | 111 | struct hlist_node gate_list; |
110 | struct ieee80211_sub_if_data *sdata; | 112 | struct ieee80211_sub_if_data *sdata; |
111 | struct sta_info __rcu *next_hop; | 113 | struct sta_info __rcu *next_hop; |
@@ -135,12 +137,16 @@ struct mesh_path { | |||
135 | * gate's mpath may or may not be resolved and active. | 137 | * gate's mpath may or may not be resolved and active. |
136 | * @gates_lock: protects updates to known_gates | 138 | * @gates_lock: protects updates to known_gates |
137 | * @rhead: the rhashtable containing struct mesh_paths, keyed by dest addr | 139 | * @rhead: the rhashtable containing struct mesh_paths, keyed by dest addr |
140 | * @walk_head: linked list containging all mesh_path objects | ||
141 | * @walk_lock: lock protecting walk_head | ||
138 | * @entries: number of entries in the table | 142 | * @entries: number of entries in the table |
139 | */ | 143 | */ |
140 | struct mesh_table { | 144 | struct mesh_table { |
141 | struct hlist_head known_gates; | 145 | struct hlist_head known_gates; |
142 | spinlock_t gates_lock; | 146 | spinlock_t gates_lock; |
143 | struct rhashtable rhead; | 147 | struct rhashtable rhead; |
148 | struct hlist_head walk_head; | ||
149 | spinlock_t walk_lock; | ||
144 | atomic_t entries; /* Up to MAX_MESH_NEIGHBOURS */ | 150 | atomic_t entries; /* Up to MAX_MESH_NEIGHBOURS */ |
145 | }; | 151 | }; |
146 | 152 | ||