mirror of
https://github.com/edk2-porting/linux-next.git
synced 2024-12-15 16:53:54 +08:00
batman-adv: move hardif refcount inc to batadv_neigh_node_new()
The batadv_neigh_node cleanup function 'batadv_neigh_node_free_rcu()' takes care of reducing the hardif refcounter, hence it's only logical to assume the creating function of that same object 'batadv_neigh_node_new()' takes care of increasing the same refcounter. Signed-off-by: Marek Lindner <mareklindner@neomailbox.ch> Acked-by: Simon Wunderlich <sw@simonwunderlich.de> Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
This commit is contained in:
parent
1dd34b5ad8
commit
f729dc70da
@ -303,12 +303,6 @@ batadv_iv_ogm_neigh_new(struct batadv_hard_iface *hard_iface,
|
||||
if (!neigh_node)
|
||||
goto out;
|
||||
|
||||
if (!atomic_inc_not_zero(&hard_iface->refcount)) {
|
||||
kfree(neigh_node);
|
||||
neigh_node = NULL;
|
||||
goto out;
|
||||
}
|
||||
|
||||
neigh_node->orig_node = orig_neigh;
|
||||
neigh_node->if_incoming = hard_iface;
|
||||
|
||||
|
@ -461,6 +461,12 @@ batadv_neigh_node_new(struct batadv_hard_iface *hard_iface,
|
||||
if (!neigh_node)
|
||||
goto out;
|
||||
|
||||
if (!atomic_inc_not_zero(&hard_iface->refcount)) {
|
||||
kfree(neigh_node);
|
||||
neigh_node = NULL;
|
||||
goto out;
|
||||
}
|
||||
|
||||
INIT_HLIST_NODE(&neigh_node->list);
|
||||
INIT_HLIST_HEAD(&neigh_node->ifinfo_list);
|
||||
spin_lock_init(&neigh_node->ifinfo_lock);
|
||||
|
Loading…
Reference in New Issue
Block a user