aboutsummaryrefslogtreecommitdiffstats
path: root/net/batman-adv/types.h
diff options
context:
space:
mode:
authorSimon Wunderlich <siwu@hrz.tu-chemnitz.de>2011-10-22 20:12:51 +0200
committerAntonio Quartulli <ordex@autistici.org>2012-04-11 14:28:59 +0200
commitdb08e6e557ebc8ffedf6530693937d0e51b8f6b9 (patch)
treef9f5eb55dd5258e5def03f4e39f2d10145afbaa1 /net/batman-adv/types.h
parentbatman-adv: export claim tables through debugfs (diff)
downloadlinux-dev-db08e6e557ebc8ffedf6530693937d0e51b8f6b9.tar.xz
linux-dev-db08e6e557ebc8ffedf6530693937d0e51b8f6b9.zip
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 '')
-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 089dd44a29b1..35cd831508a9 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 {