Lines Matching defs:neigh
237 * batadv_hardif_neigh_release() - release hardif neigh node from lists and
394 * @neigh: the neigh node to be queried
402 batadv_neigh_ifinfo_get(struct batadv_neigh_node *neigh,
409 hlist_for_each_entry_rcu(tmp_neigh_ifinfo, &neigh->ifinfo_list,
427 * @neigh: the neigh node to be queried
437 batadv_neigh_ifinfo_new(struct batadv_neigh_node *neigh,
442 spin_lock_bh(&neigh->ifinfo_lock);
444 neigh_ifinfo = batadv_neigh_ifinfo_get(neigh, if_outgoing);
460 hlist_add_head_rcu(&neigh_ifinfo->list, &neigh->ifinfo_list);
463 spin_unlock_bh(&neigh->ifinfo_lock);
541 if (bat_priv->algo_ops->neigh.hardif_init)
542 bat_priv->algo_ops->neigh.hardif_init(hardif_neigh);
608 * batadv_neigh_node_create() - create a neigh node object
672 * batadv_neigh_node_get_or_create() - retrieve or create a neigh node object
749 if (!bat_priv->algo_ops->neigh.dump) {
754 bat_priv->algo_ops->neigh.dump(msg, cb, bat_priv, hardif);
976 * @neigh: orig node which is to be checked
980 struct batadv_neigh_node *neigh)
986 spin_lock_bh(&neigh->ifinfo_lock);
990 &neigh->ifinfo_list, list) {
1005 neigh->addr, if_outgoing->net_dev->name);
1011 spin_unlock_bh(&neigh->ifinfo_lock);
1137 struct batadv_neigh_node *best = NULL, *neigh;
1141 hlist_for_each_entry_rcu(neigh, &orig_node->neigh_list, list) {
1142 if (best && (bao->neigh.cmp(neigh, if_outgoing, best,
1146 if (!kref_get_unless_zero(&neigh->refcount))
1151 best = neigh;