Lines Matching refs:neigh
351 batadv_neigh_ifinfo_get(struct batadv_neigh_node *neigh, in batadv_neigh_ifinfo_get() argument
358 hlist_for_each_entry_rcu(tmp_neigh_ifinfo, &neigh->ifinfo_list, in batadv_neigh_ifinfo_get()
386 batadv_neigh_ifinfo_new(struct batadv_neigh_node *neigh, in batadv_neigh_ifinfo_new() argument
391 spin_lock_bh(&neigh->ifinfo_lock); in batadv_neigh_ifinfo_new()
393 neigh_ifinfo = batadv_neigh_ifinfo_get(neigh, if_outgoing); in batadv_neigh_ifinfo_new()
411 hlist_add_head_rcu(&neigh_ifinfo->list, &neigh->ifinfo_list); in batadv_neigh_ifinfo_new()
414 spin_unlock_bh(&neigh->ifinfo_lock); in batadv_neigh_ifinfo_new()
721 struct batadv_neigh_node *neigh) in batadv_purge_neigh_ifinfo() argument
727 spin_lock_bh(&neigh->ifinfo_lock); in batadv_purge_neigh_ifinfo()
731 &neigh->ifinfo_list, list) { in batadv_purge_neigh_ifinfo()
746 neigh->addr, if_outgoing->net_dev->name); in batadv_purge_neigh_ifinfo()
752 spin_unlock_bh(&neigh->ifinfo_lock); in batadv_purge_neigh_ifinfo()
878 struct batadv_neigh_node *best = NULL, *neigh; in batadv_find_best_neighbor() local
882 hlist_for_each_entry_rcu(neigh, &orig_node->neigh_list, list) { in batadv_find_best_neighbor()
883 if (best && (bao->bat_neigh_cmp(neigh, if_outgoing, in batadv_find_best_neighbor()
887 if (!atomic_inc_not_zero(&neigh->refcount)) in batadv_find_best_neighbor()
893 best = neigh; in batadv_find_best_neighbor()