| /linux/net/batman-adv/ |
| H A D | originator.c | 57 struct batadv_orig_node *orig_node; in batadv_orig_hash_find() local 68 hlist_for_each_entry_rcu(orig_node, head, hash_entry) { in batadv_orig_hash_find() 69 if (!batadv_compare_eth(orig_node, data)) in batadv_orig_hash_find() 72 if (!kref_get_unless_zero(&orig_node->refcount)) in batadv_orig_hash_find() 75 orig_node_tmp = orig_node; in batadv_orig_hash_find() 109 batadv_orig_node_vlan_get(struct batadv_orig_node *orig_node, in batadv_orig_node_vlan_get() argument 116 hlist_for_each_entry_rcu(tmp, &orig_node->vlan_list, list) { in batadv_orig_node_vlan_get() 168 batadv_orig_node_vlan_new(struct batadv_orig_node *orig_node, in batadv_orig_node_vlan_new() argument 176 spin_lock_bh(&orig_node->vlan_list_lock); in batadv_orig_node_vlan_new() 179 vlan = batadv_orig_node_vlan_get(orig_node, vid); in batadv_orig_node_vlan_new() [all …]
|
| H A D | routing.c | 54 struct batadv_orig_node *orig_node, in _batadv_update_route() argument 61 orig_ifinfo = batadv_orig_ifinfo_get(orig_node, recv_if); in _batadv_update_route() 65 spin_lock_bh(&orig_node->neigh_list_lock); in _batadv_update_route() 80 spin_unlock_bh(&orig_node->neigh_list_lock); in _batadv_update_route() 86 "Deleting route towards: %pM\n", orig_node->orig); in _batadv_update_route() 87 batadv_tt_global_del_orig(bat_priv, orig_node, -1, in _batadv_update_route() 94 orig_node->orig, neigh_node->addr); in _batadv_update_route() 99 orig_node->orig, neigh_node->addr, in _batadv_update_route() 115 struct batadv_orig_node *orig_node, in batadv_update_route() argument 121 if (!orig_node) in batadv_update_route() [all …]
|
| H A D | gateway_client.c | 69 batadv_orig_node_put(gw_node->orig_node); in batadv_gw_node_release() 106 struct batadv_orig_node *orig_node = NULL; in batadv_gw_get_selected_orig() local 114 orig_node = gw_node->orig_node; in batadv_gw_get_selected_orig() 115 if (!orig_node) in batadv_gw_get_selected_orig() 118 if (!kref_get_unless_zero(&orig_node->refcount)) in batadv_gw_get_selected_orig() 119 orig_node = NULL; in batadv_gw_get_selected_orig() 125 return orig_node; in batadv_gw_get_selected_orig() 235 sprintf(gw_addr, "%pM", next_gw->orig_node->orig); in batadv_gw_election() 237 router = batadv_orig_router_get(next_gw->orig_node, in batadv_gw_election() 260 next_gw->orig_node->orig, in batadv_gw_election() [all …]
|
| H A D | translation-table.c | 69 struct batadv_orig_node *orig_node); 74 struct batadv_orig_node *orig_node, 341 static void batadv_tt_global_size_mod(struct batadv_orig_node *orig_node, in batadv_tt_global_size_mod() argument 346 vlan = batadv_orig_node_vlan_new(orig_node, vid); in batadv_tt_global_size_mod() 351 spin_lock_bh(&orig_node->vlan_list_lock); in batadv_tt_global_size_mod() 356 spin_unlock_bh(&orig_node->vlan_list_lock); in batadv_tt_global_size_mod() 368 static void batadv_tt_global_size_inc(struct batadv_orig_node *orig_node, in batadv_tt_global_size_inc() argument 371 batadv_tt_global_size_mod(orig_node, vid, 1); in batadv_tt_global_size_inc() 380 static void batadv_tt_global_size_dec(struct batadv_orig_node *orig_node, in batadv_tt_global_size_dec() argument 383 batadv_tt_global_size_mod(orig_node, vid, -1); in batadv_tt_global_size_dec() [all …]
|
| H A D | bat_iv_ogm.c | 143 struct batadv_orig_node *orig_node; in batadv_iv_ogm_orig_get() local 146 orig_node = batadv_orig_hash_find(bat_priv, addr); in batadv_iv_ogm_orig_get() 147 if (orig_node) in batadv_iv_ogm_orig_get() 148 return orig_node; in batadv_iv_ogm_orig_get() 150 orig_node = batadv_orig_node_new(bat_priv, addr); in batadv_iv_ogm_orig_get() 151 if (!orig_node) in batadv_iv_ogm_orig_get() 154 spin_lock_init(&orig_node->bat_iv.ogm_cnt_lock); in batadv_iv_ogm_orig_get() 156 kref_get(&orig_node->refcount); in batadv_iv_ogm_orig_get() 158 batadv_choose_orig, orig_node, in batadv_iv_ogm_orig_get() 159 &orig_node->hash_entry); in batadv_iv_ogm_orig_get() [all …]
|
| H A D | bat_v_ogm.c | 58 struct batadv_orig_node *orig_node; in batadv_v_ogm_orig_get() local 61 orig_node = batadv_orig_hash_find(bat_priv, addr); in batadv_v_ogm_orig_get() 62 if (orig_node) in batadv_v_ogm_orig_get() 63 return orig_node; in batadv_v_ogm_orig_get() 65 orig_node = batadv_orig_node_new(bat_priv, addr); in batadv_v_ogm_orig_get() 66 if (!orig_node) in batadv_v_ogm_orig_get() 69 kref_get(&orig_node->refcount); in batadv_v_ogm_orig_get() 71 batadv_choose_orig, orig_node, in batadv_v_ogm_orig_get() 72 &orig_node->hash_entry); in batadv_v_ogm_orig_get() 75 batadv_orig_node_put(orig_node); in batadv_v_ogm_orig_get() [all …]
|
| H A D | originator.h | 32 batadv_neigh_node_get_or_create(struct batadv_orig_node *orig_node, 37 batadv_orig_router_get(struct batadv_orig_node *orig_node, 53 batadv_orig_ifinfo_get(struct batadv_orig_node *orig_node, 56 batadv_orig_ifinfo_new(struct batadv_orig_node *orig_node, 62 batadv_orig_node_vlan_new(struct batadv_orig_node *orig_node, 65 batadv_orig_node_vlan_get(struct batadv_orig_node *orig_node, 162 static inline void batadv_orig_node_put(struct batadv_orig_node *orig_node) in batadv_orig_node_put() argument 164 if (!orig_node) in batadv_orig_node_put() 167 kref_put(&orig_node->refcount, batadv_orig_node_release); in batadv_orig_node_put()
|
| H A D | send.c | 171 struct batadv_orig_node *orig_node, in batadv_send_skb_to_orig() argument 174 struct batadv_priv *bat_priv = orig_node->bat_priv; in batadv_send_skb_to_orig() 179 neigh_node = batadv_find_router(bat_priv, orig_node, recv_if); in batadv_send_skb_to_orig() 191 ret = batadv_frag_send_packet(skb, orig_node, neigh_node); in batadv_send_skb_to_orig() 222 struct batadv_orig_node *orig_node) in batadv_send_skb_push_fill_unicast() argument 225 u8 ttvn = READ_ONCE(orig_node->last_ttvn); in batadv_send_skb_push_fill_unicast() 237 ether_addr_copy(unicast_packet->dest, orig_node->orig); in batadv_send_skb_push_fill_unicast() 252 struct batadv_orig_node *orig_node) in batadv_send_skb_prepare_unicast() argument 256 return batadv_send_skb_push_fill_unicast(skb, uni_size, orig_node); in batadv_send_skb_prepare_unicast() 321 struct batadv_orig_node *orig_node, in batadv_send_skb_unicast() argument [all …]
|
| H A D | bat_v.c | 298 struct batadv_orig_node *orig_node, in batadv_v_orig_dump_subentry() argument 315 last_seen_msecs = jiffies_to_msecs(jiffies - orig_node->last_seen); in batadv_v_orig_dump_subentry() 326 if (nla_put(msg, BATADV_ATTR_ORIG_ADDRESS, ETH_ALEN, orig_node->orig) || in batadv_v_orig_dump_subentry() 367 struct batadv_orig_node *orig_node, int *sub_s) in batadv_v_orig_dump_entry() argument 374 neigh_node_best = batadv_orig_router_get(orig_node, if_outgoing); in batadv_v_orig_dump_entry() 378 hlist_for_each_entry_rcu(neigh_node, &orig_node->neigh_list, list) { in batadv_v_orig_dump_entry() 385 if_outgoing, orig_node, in batadv_v_orig_dump_entry() 420 struct batadv_orig_node *orig_node; in batadv_v_orig_dump_bucket() local 424 hlist_for_each_entry_rcu(orig_node, head, hash_entry) { in batadv_v_orig_dump_bucket() 429 if_outgoing, orig_node, sub)) { in batadv_v_orig_dump_bucket() [all …]
|
| H A D | gateway_client.h | 24 struct batadv_orig_node *orig_node); 26 struct batadv_orig_node *orig_node, 29 struct batadv_orig_node *orig_node); 40 struct batadv_orig_node *orig_node);
|
| H A D | tvlv.c | 396 struct batadv_orig_node *orig_node, in batadv_tvlv_call_handler() argument 413 if (!orig_node) in batadv_tvlv_call_handler() 416 tvlv_handler->ogm_handler(bat_priv, orig_node, in batadv_tvlv_call_handler() 541 struct batadv_orig_node *orig_node, in batadv_tvlv_containers_process() argument 562 packet_type, orig_node, skb, in batadv_tvlv_containers_process() 593 tvlv_handler->ogm_handler(bat_priv, orig_node, in batadv_tvlv_containers_process() 610 struct batadv_orig_node *orig_node) in batadv_tvlv_ogm_receive() argument 624 batadv_tvlv_containers_process(bat_priv, BATADV_IV_OGM, orig_node, NULL, in batadv_tvlv_ogm_receive() 734 struct batadv_orig_node *orig_node; in batadv_tvlv_unicast_send() local 740 orig_node = batadv_orig_hash_find(bat_priv, dst); in batadv_tvlv_unicast_send() [all …]
|
| H A D | multicast.c | 1283 struct batadv_orig_node *orig_node) in batadv_mcast_forw_send_orig() argument 1291 if (batadv_bla_is_backbone_gw_orig(bat_priv, orig_node->orig, vid)) { in batadv_mcast_forw_send_orig() 1297 orig_node, vid); in batadv_mcast_forw_send_orig() 1336 orig_entry->orig_node); in batadv_mcast_forw_tt() 1363 struct batadv_orig_node *orig_node; in batadv_mcast_forw_want_all_ipv4() local 1368 hlist_for_each_entry_rcu(orig_node, in batadv_mcast_forw_want_all_ipv4() 1377 batadv_mcast_forw_send_orig(bat_priv, newskb, vid, orig_node); in batadv_mcast_forw_want_all_ipv4() 1400 struct batadv_orig_node *orig_node; in batadv_mcast_forw_want_all_ipv6() local 1405 hlist_for_each_entry_rcu(orig_node, in batadv_mcast_forw_want_all_ipv6() 1414 batadv_mcast_forw_send_orig(bat_priv, newskb, vid, orig_node); in batadv_mcast_forw_want_all_ipv6() [all …]
|
| H A D | tp_meter.c | 624 struct batadv_orig_node *orig_node, in batadv_tp_send_msg() argument 642 ether_addr_copy(icmp->dst, orig_node->orig); in batadv_tp_send_msg() 659 r = batadv_send_skb_to_orig(skb, orig_node, NULL); in batadv_tp_send_msg() 786 struct batadv_orig_node *orig_node = NULL; in batadv_tp_recv_ack() local 819 orig_node = batadv_orig_hash_find(bat_priv, icmp->orig); in batadv_tp_recv_ack() 820 if (unlikely(!orig_node)) in batadv_tp_recv_ack() 844 orig_node, recv_ack, packet_len, in batadv_tp_recv_ack() 855 batadv_orig_node_put(orig_node); in batadv_tp_recv_ack() 917 struct batadv_orig_node *orig_node = NULL; in batadv_tp_send() local 926 orig_node = batadv_orig_hash_find(bat_priv, tp_vars->common.other_end); in batadv_tp_send() [all …]
|
| H A D | distributed-arp-table.h | 49 batadv_dat_init_orig_node_addr(struct batadv_orig_node *orig_node) in batadv_dat_init_orig_node_addr() argument 53 addr = batadv_choose_orig(orig_node->orig, BATADV_DAT_ADDR_MAX); in batadv_dat_init_orig_node_addr() 54 orig_node->dat_addr = (batadv_dat_addr_t)addr; in batadv_dat_init_orig_node_addr() 155 batadv_dat_init_orig_node_addr(struct batadv_orig_node *orig_node) in batadv_dat_init_orig_node_addr() argument
|
| H A D | send.h | 33 struct batadv_orig_node *orig_node, 55 struct batadv_orig_node *orig_node, 60 struct batadv_orig_node *orig_node,
|
| H A D | fragmentation.c | 61 void batadv_frag_purge_orig(struct batadv_orig_node *orig_node, in batadv_frag_purge_orig() argument 68 chain = &orig_node->fragments[i]; in batadv_frag_purge_orig() 138 static bool batadv_frag_insert_packet(struct batadv_orig_node *orig_node, in batadv_frag_insert_packet() argument 177 chain = &orig_node->fragments[bucket]; in batadv_frag_insert_packet() 506 struct batadv_orig_node *orig_node, in batadv_frag_send_packet() argument 542 bat_priv = orig_node->bat_priv; in batadv_frag_send_packet() 580 ether_addr_copy(frag_header.dest, orig_node->orig); in batadv_frag_send_packet()
|
| H A D | fragmentation.h | 25 struct batadv_orig_node *orig_node); 27 struct batadv_orig_node *orig_node,
|
| H A D | multicast_forw.c | 151 struct batadv_orig_node *orig_node, in batadv_mcast_forw_push_dest() argument 162 if (batadv_bla_is_backbone_gw_orig(bat_priv, orig_node->orig, vid)) in batadv_mcast_forw_push_dest() 169 ether_addr_copy(skb->data, orig_node->orig); in batadv_mcast_forw_push_dest() 198 struct batadv_orig_node *orig_node; in batadv_mcast_forw_push_dests_list() local 203 orig_node = batadv_mcast_forw_orig_entry(node, entry_offset); in batadv_mcast_forw_push_dests_list() 204 if (!orig_node || in batadv_mcast_forw_push_dests_list() 205 !batadv_mcast_forw_push_dest(bat_priv, skb, vid, orig_node, in batadv_mcast_forw_push_dests_list() 246 orig_entry->orig_node, in batadv_mcast_forw_push_tt()
|
| H A D | routing.h | 19 struct batadv_orig_node *orig_node, 47 struct batadv_orig_node *orig_node,
|
| H A D | multicast.h | 60 void batadv_mcast_purge_orig(struct batadv_orig_node *orig_node); 112 static inline void batadv_mcast_purge_orig(struct batadv_orig_node *orig_node) in batadv_mcast_purge_orig() argument
|
| H A D | translation-table.h | 27 struct batadv_orig_node *orig_node, 50 struct batadv_orig_node *orig_node,
|
| H A D | distributed-arp-table.c | 606 if (res[j].orig_node == candidate) in batadv_is_orig_node_eligible() 646 struct batadv_orig_node *orig_node; in batadv_choose_next_candidate() local 664 hlist_for_each_entry_rcu(orig_node, head, hash_entry) { in batadv_choose_next_candidate() 666 tmp_max = BATADV_DAT_ADDR_MAX - orig_node->dat_addr + in batadv_choose_next_candidate() 671 *last_max, orig_node, in batadv_choose_next_candidate() 675 if (!kref_get_unless_zero(&orig_node->refcount)) in batadv_choose_next_candidate() 680 max_orig_node = orig_node; in batadv_choose_next_candidate() 686 cands[select].orig_node = max_orig_node; in batadv_choose_next_candidate() 776 neigh_node = batadv_orig_router_get(cand[i].orig_node, in batadv_dat_forward_data() 786 cand[i].orig_node, in batadv_dat_forward_data() [all …]
|
| H A D | bridge_loop_avoidance.c | 490 struct batadv_orig_node *orig_node; in batadv_bla_get_backbone_gw() local 530 orig_node = batadv_orig_hash_find(bat_priv, orig); in batadv_bla_get_backbone_gw() 531 if (orig_node) { in batadv_bla_get_backbone_gw() 532 batadv_tt_global_del_orig(bat_priv, orig_node, vid, in batadv_bla_get_backbone_gw() 534 batadv_orig_node_put(orig_node); in batadv_bla_get_backbone_gw() 1029 struct batadv_orig_node *orig_node; in batadv_check_claim_group() local 1060 orig_node = batadv_orig_hash_find(bat_priv, backbone_addr); in batadv_check_claim_group() 1065 if (!orig_node) in batadv_check_claim_group() 1076 batadv_orig_node_put(orig_node); in batadv_check_claim_group() 1834 struct batadv_orig_node *orig_node, int hdr_size) in batadv_bla_is_backbone_gw() argument [all …]
|
| H A D | mesh-interface.h | 20 struct batadv_orig_node *orig_node);
|
| H A D | types.h | 591 struct batadv_orig_node *orig_node; member 1906 struct batadv_orig_node *orig_node; member 2140 struct batadv_orig_node *orig_node); 2226 struct batadv_orig_node *orig_node; member
|