[maint] batman-adv: Fix compile error on deactivated MCAST feature
Commit Message
Some members of "struct batadv_orig_node" are not available if compiling
without the multicast optimizations feature.
Fix this by moving their initialization into the right #ifdef's.
Fixes: 7f220ed1f063 ("batman-adv: Fix potential synchronization issues in mcast tvlv handler")
Signed-off-by: Linus Lüssing <linus.luessing@c0d3.blue>
---
originator.c | 9 +++++----
1 file changed, 5 insertions(+), 4 deletions(-)
Comments
On Thursday, June 18, 2015 06:47:19 Linus Lüssing wrote:
> Some members of "struct batadv_orig_node" are not available if compiling
> without the multicast optimizations feature.
>
> Fix this by moving their initialization into the right #ifdef's.
>
> Fixes: 7f220ed1f063 ("batman-adv: Fix potential synchronization issues in
> mcast tvlv handler") Signed-off-by: Linus Lüssing
> <linus.luessing@c0d3.blue>
> ---
> originator.c | 9 +++++----
> 1 file changed, 5 insertions(+), 4 deletions(-)
Applied in revision 256776e.
Thanks,
Marek
@@ -658,15 +658,11 @@ struct batadv_orig_node *batadv_orig_node_new(struct batadv_priv *bat_priv,
INIT_HLIST_HEAD(&orig_node->neigh_list);
INIT_LIST_HEAD(&orig_node->vlan_list);
INIT_HLIST_HEAD(&orig_node->ifinfo_list);
- INIT_HLIST_NODE(&orig_node->mcast_want_all_unsnoopables_node);
- INIT_HLIST_NODE(&orig_node->mcast_want_all_ipv4_node);
- INIT_HLIST_NODE(&orig_node->mcast_want_all_ipv6_node);
spin_lock_init(&orig_node->bcast_seqno_lock);
spin_lock_init(&orig_node->neigh_list_lock);
spin_lock_init(&orig_node->tt_buff_lock);
spin_lock_init(&orig_node->tt_lock);
spin_lock_init(&orig_node->vlan_list_lock);
- spin_lock_init(&orig_node->mcast_handler_lock);
batadv_nc_init_orig(orig_node);
@@ -682,8 +678,13 @@ struct batadv_orig_node *batadv_orig_node_new(struct batadv_priv *bat_priv,
orig_node->last_seen = jiffies;
reset_time = jiffies - 1 - msecs_to_jiffies(BATADV_RESET_PROTECTION_MS);
orig_node->bcast_seqno_reset = reset_time;
+
#ifdef CONFIG_BATMAN_ADV_MCAST
orig_node->mcast_flags = BATADV_NO_FLAGS;
+ INIT_HLIST_NODE(&orig_node->mcast_want_all_unsnoopables_node);
+ INIT_HLIST_NODE(&orig_node->mcast_want_all_ipv4_node);
+ INIT_HLIST_NODE(&orig_node->mcast_want_all_ipv6_node);
+ spin_lock_init(&orig_node->mcast_handler_lock);
#endif
/* create a vlan object for the "untagged" LAN */