aboutsummaryrefslogtreecommitdiffstats
path: root/net/batman-adv/originator.c
diff options
context:
space:
mode:
Diffstat (limited to 'net/batman-adv/originator.c')
-rw-r--r--net/batman-adv/originator.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/net/batman-adv/originator.c b/net/batman-adv/originator.c
index 24a9300b08e0..ffd9dfbd9b0e 100644
--- a/net/batman-adv/originator.c
+++ b/net/batman-adv/originator.c
@@ -27,6 +27,7 @@
27#include "bridge_loop_avoidance.h" 27#include "bridge_loop_avoidance.h"
28#include "network-coding.h" 28#include "network-coding.h"
29#include "fragmentation.h" 29#include "fragmentation.h"
30#include "multicast.h"
30 31
31/* hash class keys */ 32/* hash class keys */
32static struct lock_class_key batadv_orig_hash_lock_class_key; 33static struct lock_class_key batadv_orig_hash_lock_class_key;
@@ -557,6 +558,8 @@ static void batadv_orig_node_free_rcu(struct rcu_head *rcu)
557 } 558 }
558 spin_unlock_bh(&orig_node->neigh_list_lock); 559 spin_unlock_bh(&orig_node->neigh_list_lock);
559 560
561 batadv_mcast_purge_orig(orig_node);
562
560 /* Free nc_nodes */ 563 /* Free nc_nodes */
561 batadv_nc_purge_orig(orig_node->bat_priv, orig_node, NULL); 564 batadv_nc_purge_orig(orig_node->bat_priv, orig_node, NULL);
562 565
@@ -672,6 +675,9 @@ struct batadv_orig_node *batadv_orig_node_new(struct batadv_priv *bat_priv,
672 orig_node->tt_buff_len = 0; 675 orig_node->tt_buff_len = 0;
673 reset_time = jiffies - 1 - msecs_to_jiffies(BATADV_RESET_PROTECTION_MS); 676 reset_time = jiffies - 1 - msecs_to_jiffies(BATADV_RESET_PROTECTION_MS);
674 orig_node->bcast_seqno_reset = reset_time; 677 orig_node->bcast_seqno_reset = reset_time;
678#ifdef CONFIG_BATMAN_ADV_MCAST
679 orig_node->mcast_flags = BATADV_NO_FLAGS;
680#endif
675 681
676 /* create a vlan object for the "untagged" LAN */ 682 /* create a vlan object for the "untagged" LAN */
677 vlan = batadv_orig_node_vlan_new(orig_node, BATADV_NO_FLAGS); 683 vlan = batadv_orig_node_vlan_new(orig_node, BATADV_NO_FLAGS);