aboutsummaryrefslogtreecommitdiffstats
path: root/net/mac80211/mesh.h
diff options
context:
space:
mode:
authorChun-Yeow Yeoh <yeohchunyeow@gmail.com>2012-03-23 06:48:51 -0400
committerJohn W. Linville <linville@tuxdriver.com>2012-04-09 16:37:10 -0400
commitd2a079fd48c05235b86016a33a79cb86a86e15a8 (patch)
tree060be7f455d64165eb5f5ca7187aac73bf5d79e2 /net/mac80211/mesh.h
parent30899cc6ab4d4b63d43f6d652d1ecf9107eadb8d (diff)
mac80211: fix the RANN propagation issues
This patch is intended to solve the follwing issues in RANN propagation: [1] The interval in propagated RANN should be based on the interval of received RANN. [2] The aggregated path metric for propagated RANN is as received plus own link metric towards the transmitting mesh STA (not root mesh STA). [3] The comparison of path metric for RANN with same sequence number should be done before deciding whether to propagate or not. Signed-off-by: Chun-Yeow Yeoh <yeohchunyeow@gmail.com> Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'net/mac80211/mesh.h')
-rw-r--r--net/mac80211/mesh.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/net/mac80211/mesh.h b/net/mac80211/mesh.h
index 2bd5d8b864f6..3e52439ed112 100644
--- a/net/mac80211/mesh.h
+++ b/net/mac80211/mesh.h
@@ -86,6 +86,7 @@ enum mesh_deferred_task_flags {
86 * mpath itself. No need to take this lock when adding or removing 86 * mpath itself. No need to take this lock when adding or removing
87 * an mpath to a hash bucket on a path table. 87 * an mpath to a hash bucket on a path table.
88 * @rann_snd_addr: the RANN sender address 88 * @rann_snd_addr: the RANN sender address
89 * @rann_metric: the aggregated path metric towards the root node
89 * @is_root: the destination station of this path is a root node 90 * @is_root: the destination station of this path is a root node
90 * @is_gate: the destination station of this path is a mesh gate 91 * @is_gate: the destination station of this path is a mesh gate
91 * 92 *
@@ -112,6 +113,7 @@ struct mesh_path {
112 enum mesh_path_flags flags; 113 enum mesh_path_flags flags;
113 spinlock_t state_lock; 114 spinlock_t state_lock;
114 u8 rann_snd_addr[ETH_ALEN]; 115 u8 rann_snd_addr[ETH_ALEN];
116 u32 rann_metric;
115 bool is_root; 117 bool is_root;
116 bool is_gate; 118 bool is_gate;
117}; 119};