diff options
author | Antonio Quartulli <ordex@autistici.org> | 2011-07-07 01:40:58 +0200 |
---|---|---|
committer | Marek Lindner <lindner_marek@yahoo.de> | 2011-07-07 18:49:26 +0200 |
commit | 058d0e26989e3da2fa031f551235f6ff1e0bc27c (patch) | |
tree | f39ce9771166b9a110a38c65621eb2128c152068 /net/batman-adv/send.c | |
parent | c8c991bf2076d711f14ff9063db306fd522ddcd4 (diff) | |
download | blackbird-op-linux-058d0e26989e3da2fa031f551235f6ff1e0bc27c.tar.gz blackbird-op-linux-058d0e26989e3da2fa031f551235f6ff1e0bc27c.zip |
batman-adv: keep local table consistency for further TT_RESPONSE
To keep transtable consistency among all the nodes, an originator must
not send not yet announced clients within a full table TT_RESPONSE.
Instead, deleted client have to be kept in the table in order to be sent
within an immediate TT_RESPONSE. In this way all the nodes in the
network will always provide the same response for the same request.
All the modification are committed at the next ttvn increment event.
Signed-off-by: Antonio Quartulli <ordex@autistici.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Diffstat (limited to 'net/batman-adv/send.c')
-rw-r--r-- | net/batman-adv/send.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/net/batman-adv/send.c b/net/batman-adv/send.c index 4b8e11bc14fa..58d14472068c 100644 --- a/net/batman-adv/send.c +++ b/net/batman-adv/send.c @@ -309,10 +309,8 @@ void schedule_own_packet(struct hard_iface *hard_iface) if (hard_iface == primary_if) { /* if at least one change happened */ if (atomic_read(&bat_priv->tt_local_changes) > 0) { + tt_commit_changes(bat_priv); prepare_packet_buffer(bat_priv, hard_iface); - /* Increment the TTVN only once per OGM interval */ - atomic_inc(&bat_priv->ttvn); - bat_priv->tt_poss_change = false; } /* if the changes have been sent enough times */ |