| /linux/net/batman-adv/ |
| H A D | originator.c | 288 struct batadv_neigh_node *neigh_node; in batadv_neigh_node_release() local 291 neigh_node = container_of(ref, struct batadv_neigh_node, refcount); in batadv_neigh_node_release() 294 &neigh_node->ifinfo_list, list) { in batadv_neigh_node_release() 298 batadv_hardif_neigh_put(neigh_node->hardif_neigh); in batadv_neigh_node_release() 300 batadv_hardif_put(neigh_node->if_incoming); in batadv_neigh_node_release() 302 kfree_rcu(neigh_node, rcu); in batadv_neigh_node_release() 352 struct batadv_neigh_node *neigh_node; in batadv_orig_to_router() local 359 neigh_node = batadv_find_router(bat_priv, orig_node, if_outgoing); in batadv_orig_to_router() 362 return neigh_node; in batadv_orig_to_router() 677 struct batadv_neigh_node *neigh_node; in batadv_neigh_node_create() local [all …]
|
| H A D | bat_iv_ogm.c | 187 struct batadv_neigh_node *neigh_node; in batadv_iv_ogm_neigh_new() local 189 neigh_node = batadv_neigh_node_get_or_create(orig_node, in batadv_iv_ogm_neigh_new() 191 return neigh_node; in batadv_iv_ogm_neigh_new() 1072 const struct batadv_neigh_node *neigh_node) in batadv_iv_ogm_neigh_ifinfo_sum() argument 1077 orig_neigh = batadv_orig_hash_find(bat_priv, neigh_node->addr); in batadv_iv_ogm_neigh_ifinfo_sum() 1081 sum = batadv_iv_orig_ifinfo_sum(orig_neigh, neigh_node->if_incoming); in batadv_iv_ogm_neigh_ifinfo_sum() 1112 struct batadv_neigh_node *neigh_node = NULL; in batadv_iv_ogm_orig_update() local 1130 if (WARN(neigh_node, "too many matching neigh_nodes")) in batadv_iv_ogm_orig_update() 1131 batadv_neigh_node_put(neigh_node); in batadv_iv_ogm_orig_update() 1132 neigh_node = tmp_neigh_node; in batadv_iv_ogm_orig_update() [all …]
|
| H A D | bat_v_ogm.c | 533 struct batadv_neigh_node *neigh_node, in batadv_v_ogm_forward() argument 558 if (neigh_node != router) in batadv_v_ogm_forward() 572 neigh_ifinfo = batadv_neigh_ifinfo_get(neigh_node, if_outgoing); in batadv_v_ogm_forward() 622 struct batadv_neigh_node *neigh_node, in batadv_v_ogm_metric_update() argument 659 neigh_node->last_seen = jiffies; in batadv_v_ogm_metric_update() 666 neigh_ifinfo = batadv_neigh_ifinfo_new(neigh_node, if_outgoing); in batadv_v_ogm_metric_update() 704 struct batadv_neigh_node *neigh_node, in batadv_v_ogm_route_update() argument 748 if (router == neigh_node) in batadv_v_ogm_route_update() 757 neigh_ifinfo = batadv_neigh_ifinfo_get(neigh_node, if_outgoing); in batadv_v_ogm_route_update() 774 batadv_update_route(bat_priv, orig_node, if_outgoing, neigh_node); in batadv_v_ogm_route_update() [all …]
|
| H A D | fragmentation.c | 407 struct batadv_neigh_node *neigh_node = NULL; in batadv_frag_skb_fwd() local 414 neigh_node = batadv_orig_to_router(bat_priv, packet->dest, recv_if); in batadv_frag_skb_fwd() 415 if (!neigh_node) in batadv_frag_skb_fwd() 422 if (total_size > neigh_node->if_incoming->net_dev->mtu) { in batadv_frag_skb_fwd() 444 batadv_send_unicast_skb(skb, neigh_node); in batadv_frag_skb_fwd() 450 batadv_neigh_node_put(neigh_node); in batadv_frag_skb_fwd() 507 struct batadv_neigh_node *neigh_node) in batadv_frag_send_packet() argument 509 struct net_device *net_dev = neigh_node->if_incoming->net_dev; in batadv_frag_send_packet() 600 ret = batadv_send_unicast_skb(skb_fragment, neigh_node); in batadv_frag_send_packet() 623 ret = batadv_send_unicast_skb(skb, neigh_node); in batadv_frag_send_packet()
|
| H A D | send.c | 175 struct batadv_neigh_node *neigh_node; in batadv_send_skb_to_orig() local 179 neigh_node = batadv_find_router(bat_priv, orig_node, recv_if); in batadv_send_skb_to_orig() 180 if (!neigh_node) { in batadv_send_skb_to_orig() 189 skb->len > neigh_node->if_incoming->net_dev->mtu) { in batadv_send_skb_to_orig() 191 ret = batadv_frag_send_packet(skb, orig_node, neigh_node); in batadv_send_skb_to_orig() 198 ret = batadv_send_unicast_skb(skb, neigh_node); in batadv_send_skb_to_orig() 204 batadv_neigh_node_put(neigh_node); in batadv_send_skb_to_orig() 845 struct batadv_hardif_neigh_node *neigh_node = NULL; in batadv_send_no_broadcast() local 854 neigh_node = batadv_hardif_neigh_get(if_out, in batadv_send_no_broadcast() 859 orig_neigh = neigh_node ? neigh_node->orig : NULL; in batadv_send_no_broadcast() [all …]
|
| H A D | bat_v.c | 299 struct batadv_neigh_node *neigh_node, in batadv_v_orig_dump_subentry() argument 307 n_ifinfo = batadv_neigh_ifinfo_get(neigh_node, if_outgoing); in batadv_v_orig_dump_subentry() 318 if_outgoing != neigh_node->if_incoming) in batadv_v_orig_dump_subentry() 328 neigh_node->addr) || in batadv_v_orig_dump_subentry() 330 neigh_node->if_incoming->net_dev->name) || in batadv_v_orig_dump_subentry() 332 neigh_node->if_incoming->net_dev->ifindex) || in batadv_v_orig_dump_subentry() 370 struct batadv_neigh_node *neigh_node; in batadv_v_orig_dump_entry() local 378 hlist_for_each_entry_rcu(neigh_node, &orig_node->neigh_list, list) { in batadv_v_orig_dump_entry() 382 best = (neigh_node == neigh_node_best); in batadv_v_orig_dump_entry() 386 neigh_node, best)) { in batadv_v_orig_dump_entry()
|
| H A D | originator.h | 135 static inline void batadv_neigh_node_put(struct batadv_neigh_node *neigh_node) in batadv_neigh_node_put() argument 137 if (!neigh_node) in batadv_neigh_node_put() 140 kref_put(&neigh_node->refcount, batadv_neigh_node_release); in batadv_neigh_node_put()
|
| H A D | routing.c | 56 struct batadv_neigh_node *neigh_node) in _batadv_update_route() argument 75 if (neigh_node) in _batadv_update_route() 76 kref_get(&neigh_node->refcount); in _batadv_update_route() 78 curr_router = rcu_replace_pointer(orig_ifinfo->router, neigh_node, in _batadv_update_route() 84 if (curr_router && !neigh_node) { in _batadv_update_route() 91 } else if (!curr_router && neigh_node) { in _batadv_update_route() 94 orig_node->orig, neigh_node->addr); in _batadv_update_route() 96 } else if (neigh_node && curr_router) { in _batadv_update_route() 99 orig_node->orig, neigh_node->addr, in _batadv_update_route() 117 struct batadv_neigh_node *neigh_node) in batadv_update_route() argument [all …]
|
| H A D | multicast_forw.c | 928 struct batadv_neigh_node *neigh_node; in batadv_mcast_forw_packet() local 977 neigh_node = batadv_orig_to_router(bat_priv, dest, NULL); in batadv_mcast_forw_packet() 978 if (!neigh_node) { in batadv_mcast_forw_packet() 985 batadv_neigh_node_put(neigh_node); in batadv_mcast_forw_packet() 992 batadv_mcast_forw_scrub_dests(bat_priv, neigh_node, dest, in batadv_mcast_forw_packet() 1000 ret = batadv_send_unicast_skb(nexthop_skb, neigh_node); in batadv_mcast_forw_packet() 1002 batadv_neigh_node_put(neigh_node); in batadv_mcast_forw_packet()
|
| H A D | fragmentation.h | 28 struct batadv_neigh_node *neigh_node);
|
| H A D | routing.h | 21 struct batadv_neigh_node *neigh_node);
|
| H A D | send.h | 41 struct batadv_neigh_node *neigh_node);
|
| H A D | distributed-arp-table.c | 759 struct batadv_neigh_node *neigh_node = NULL; in batadv_dat_forward_data() 776 neigh_node = batadv_orig_router_get(cand[i].orig_node, in batadv_dat_forward_data() 778 if (!neigh_node) in batadv_dat_forward_data() 792 send_status = batadv_send_unicast_skb(tmp_skb, neigh_node); in batadv_dat_forward_data() 810 batadv_neigh_node_put(neigh_node); in batadv_dat_forward_data() 754 struct batadv_neigh_node *neigh_node = NULL; batadv_dat_forward_data() local
|