summaryrefslogtreecommitdiff
path: root/net/batman-adv/types.h
diff options
context:
space:
mode:
authorSimon Wunderlich <siwu@hrz.tu-chemnitz.de>2011-10-22 18:12:51 (GMT)
committerAntonio Quartulli <ordex@autistici.org>2012-04-11 12:28:59 (GMT)
commitdb08e6e557ebc8ffedf6530693937d0e51b8f6b9 (patch)
treef9f5eb55dd5258e5def03f4e39f2d10145afbaa1 /net/batman-adv/types.h
parent9bf8e4d4254397684250eae29a0dc12d54a00251 (diff)
downloadlinux-fsl-qoriq-db08e6e557ebc8ffedf6530693937d0e51b8f6b9.tar.xz
batman-adv: allow multiple entries in tt_global_entries
as backbone gateways will all independently announce the same clients, also the tt global table must be able to hold multiple originators per client entry. Signed-off-by: Simon Wunderlich <siwu@hrz.tu-chemnitz.de> Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Diffstat (limited to 'net/batman-adv/types.h')
-rw-r--r--net/batman-adv/types.h9
1 files changed, 8 insertions, 1 deletions
diff --git a/net/batman-adv/types.h b/net/batman-adv/types.h
index 089dd44..35cd831 100644
--- a/net/batman-adv/types.h
+++ b/net/batman-adv/types.h
@@ -241,9 +241,16 @@ struct tt_local_entry {
struct tt_global_entry {
struct tt_common_entry common;
+ struct hlist_head orig_list;
+ spinlock_t list_lock; /* protects the list */
+ unsigned long roam_at; /* time at which TT_GLOBAL_ROAM was set */
+};
+
+struct tt_orig_list_entry {
struct orig_node *orig_node;
uint8_t ttvn;
- unsigned long roam_at; /* time at which TT_GLOBAL_ROAM was set */
+ struct rcu_head rcu;
+ struct hlist_node list;
};
struct backbone_gw {