batman-adv: orig_node must be freed after in case of timeout

Message ID 1299201196-6188-1-git-send-email-ordex@autistici.org (mailing list archive)
State Accepted, archived
Commit 3786b952007820002f7dba8003b00d8e76887191
Headers

Commit Message

Antonio Quartulli March 4, 2011, 1:13 a.m. UTC
  This patch corrects commit
4c4236064501e85915087f00a370df8d9f43028d in which
bucket_free_orig_rcu() has been removed but without
being replaced.
In _push_orig(), the orig_node was not freed anymore after
a timeout.

Signed-off-by: Sven Eckelmann <sven@narfation.org>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
---
 originator.c |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
  

Comments

Marek Lindner March 4, 2011, 9:33 p.m. UTC | #1
On Friday 04 March 2011 02:13:16 Antonio Quartulli wrote:
> This patch corrects commit
> 4c4236064501e85915087f00a370df8d9f43028d in which
> bucket_free_orig_rcu() has been removed but without
> being replaced.
> In _push_orig(), the orig_node was not freed anymore after
> a timeout.

Applied in revision 1954.

Thanks,
Marek
  

Patch

diff --git a/originator.c b/originator.c
index 53753d3..0b91330 100644
--- a/originator.c
+++ b/originator.c
@@ -349,6 +349,7 @@  static void _purge_orig(struct bat_priv *bat_priv)
 				if (orig_node->gw_flags)
 					gw_node_delete(bat_priv, orig_node);
 				hlist_del_rcu(node);
+				orig_node_free_ref(orig_node);
 				continue;
 			}