Lines Matching refs:hard_iface

472  * @hard_iface: the interface where this neighbour is connected to
482 const struct batadv_hard_iface *hard_iface,
492 if (tmp_neigh_node->if_incoming != hard_iface)
508 * @hard_iface: the interface this neighbour is connected to
515 batadv_hardif_neigh_create(struct batadv_hard_iface *hard_iface,
519 struct batadv_priv *bat_priv = netdev_priv(hard_iface->soft_iface);
522 spin_lock_bh(&hard_iface->neigh_list_lock);
525 hardif_neigh = batadv_hardif_neigh_get(hard_iface, neigh_addr);
533 kref_get(&hard_iface->refcount);
537 hardif_neigh->if_incoming = hard_iface;
545 hlist_add_head_rcu(&hardif_neigh->list, &hard_iface->neigh_list);
548 spin_unlock_bh(&hard_iface->neigh_list_lock);
555 * @hard_iface: the interface this neighbour is connected to
562 batadv_hardif_neigh_get_or_create(struct batadv_hard_iface *hard_iface,
569 hardif_neigh = batadv_hardif_neigh_get(hard_iface, neigh_addr);
573 return batadv_hardif_neigh_create(hard_iface, neigh_addr, orig_node);
578 * @hard_iface: the interface where this neighbour is connected to
586 batadv_hardif_neigh_get(const struct batadv_hard_iface *hard_iface,
593 &hard_iface->neigh_list, list) {
611 * @hard_iface: the interface where the neighbour is connected to
620 struct batadv_hard_iface *hard_iface,
628 neigh_node = batadv_neigh_node_get(orig_node, hard_iface, neigh_addr);
632 hardif_neigh = batadv_hardif_neigh_get_or_create(hard_iface,
645 kref_get(&hard_iface->refcount);
647 neigh_node->if_incoming = hard_iface;
663 neigh_addr, orig_node->orig, hard_iface->net_dev->name);
676 * @hard_iface: the interface where the neighbour is connected to
683 struct batadv_hard_iface *hard_iface,
689 neigh_node = batadv_neigh_node_get(orig_node, hard_iface, neigh_addr);
693 return batadv_neigh_node_create(orig_node, hard_iface, neigh_addr);
744 struct net_device *hard_iface = NULL;
772 hard_iface = dev_get_by_index(net, hard_ifindex);
773 if (hard_iface)
774 hardif = batadv_hardif_get_by_netdev(hard_iface);
799 if (hard_iface)
800 dev_put(hard_iface);
1217 struct batadv_hard_iface *hard_iface;
1244 list_for_each_entry_rcu(hard_iface, &batadv_hardif_list, list) {
1245 if (hard_iface->if_status != BATADV_IF_ACTIVE)
1248 if (hard_iface->soft_iface != bat_priv->soft_iface)
1251 if (!kref_get_unless_zero(&hard_iface->refcount))
1256 hard_iface);
1257 batadv_update_route(bat_priv, orig_node, hard_iface,
1262 batadv_hardif_put(hard_iface);
1373 struct batadv_hard_iface *hard_iface;
1376 hard_iface = batadv_hardif_get_by_netdev(net_dev);
1378 if (!hard_iface || !hard_iface->soft_iface) {
1383 bat_priv = netdev_priv(hard_iface->soft_iface);
1390 if (hard_iface->if_status != BATADV_IF_ACTIVE) {
1396 BATADV_SOURCE_VERSION, hard_iface->net_dev->name,
1397 hard_iface->net_dev->dev_addr,
1398 hard_iface->soft_iface->name, bat_priv->algo_ops->name);
1400 bat_priv->algo_ops->orig.print(bat_priv, seq, hard_iface);
1403 if (hard_iface)
1404 batadv_hardif_put(hard_iface);
1421 struct net_device *hard_iface = NULL;
1449 hard_iface = dev_get_by_index(net, hard_ifindex);
1450 if (hard_iface)
1451 hardif = batadv_hardif_get_by_netdev(hard_iface);
1476 if (hard_iface)
1477 dev_put(hard_iface);