Lines Matching defs:neigh
238 * batadv_hardif_neigh_release() - release hardif neigh node from lists and
395 * @neigh: the neigh node to be queried
403 batadv_neigh_ifinfo_get(struct batadv_neigh_node *neigh,
410 hlist_for_each_entry_rcu(tmp_neigh_ifinfo, &neigh->ifinfo_list,
428 * @neigh: the neigh node to be queried
438 batadv_neigh_ifinfo_new(struct batadv_neigh_node *neigh,
443 spin_lock_bh(&neigh->ifinfo_lock);
445 neigh_ifinfo = batadv_neigh_ifinfo_get(neigh, if_outgoing);
461 hlist_add_head_rcu(&neigh_ifinfo->list, &neigh->ifinfo_list);
464 spin_unlock_bh(&neigh->ifinfo_lock);
542 if (bat_priv->algo_ops->neigh.hardif_init)
543 bat_priv->algo_ops->neigh.hardif_init(hardif_neigh);
609 * batadv_neigh_node_create() - create a neigh node object
674 * batadv_neigh_node_get_or_create() - retrieve or create a neigh node object
721 if (!bat_priv->algo_ops->neigh.print) {
727 bat_priv->algo_ops->neigh.print(bat_priv, seq);
787 if (!bat_priv->algo_ops->neigh.dump) {
792 bat_priv->algo_ops->neigh.dump(msg, cb, bat_priv, hardif);
1020 * @neigh: orig node which is to be checked
1024 struct batadv_neigh_node *neigh)
1030 spin_lock_bh(&neigh->ifinfo_lock);
1034 &neigh->ifinfo_list, list) {
1049 neigh->addr, if_outgoing->net_dev->name);
1055 spin_unlock_bh(&neigh->ifinfo_lock);
1181 struct batadv_neigh_node *best = NULL, *neigh;
1185 hlist_for_each_entry_rcu(neigh, &orig_node->neigh_list, list) {
1186 if (best && (bao->neigh.cmp(neigh, if_outgoing, best,
1190 if (!kref_get_unless_zero(&neigh->refcount))
1196 best = neigh;