Lines Matching refs:orig_node

143 	struct batadv_orig_node *orig_node;
146 orig_node = batadv_orig_hash_find(bat_priv, addr);
147 if (orig_node)
148 return orig_node;
150 orig_node = batadv_orig_node_new(bat_priv, addr);
151 if (!orig_node)
154 spin_lock_init(&orig_node->bat_iv.ogm_cnt_lock);
156 kref_get(&orig_node->refcount);
158 batadv_choose_orig, orig_node,
159 &orig_node->hash_entry);
163 return orig_node;
167 batadv_orig_node_put(orig_node);
169 batadv_orig_node_put(orig_node);
177 struct batadv_orig_node *orig_node,
182 neigh_node = batadv_neigh_node_get_or_create(orig_node,
187 neigh_node->orig_node = orig_neigh;
684 static void batadv_iv_ogm_forward(struct batadv_orig_node *orig_node,
748 struct batadv_orig_node *orig_node;
758 hlist_for_each_entry_rcu(orig_node, head, hash_entry) {
760 &orig_node->ifinfo_list,
765 spin_lock_bh(&orig_node->bat_iv.ogm_cnt_lock);
771 spin_unlock_bh(&orig_node->bat_iv.ogm_cnt_lock);
878 * @orig_node: originator which reproadcasted the OGMs directly
886 static u8 batadv_iv_orig_ifinfo_sum(struct batadv_orig_node *orig_node,
892 orig_ifinfo = batadv_orig_ifinfo_get(orig_node, if_outgoing);
896 spin_lock_bh(&orig_node->bat_iv.ogm_cnt_lock);
898 spin_unlock_bh(&orig_node->bat_iv.ogm_cnt_lock);
909 * @orig_node: the orig node who originally emitted the ogm packet
910 * @orig_ifinfo: ifinfo for the outgoing interface of the orig_node
919 struct batadv_orig_node *orig_node,
942 &orig_node->neigh_list, list) {
982 orig_node, orig_tmp);
1015 router = batadv_orig_router_get(orig_node, if_outgoing);
1036 sum_orig = batadv_iv_orig_ifinfo_sum(router->orig_node,
1038 sum_neigh = batadv_iv_orig_ifinfo_sum(neigh_node->orig_node,
1044 batadv_update_route(bat_priv, orig_node, if_outgoing, neigh_node);
1062 * @orig_node: the orig node who originally emitted the ogm packet
1070 static bool batadv_iv_ogm_calc_tq(struct batadv_orig_node *orig_node,
1115 /* if orig_node is direct neighbor update neigh_node last_seen */
1116 if (orig_node == orig_neigh_node)
1119 orig_node->last_seen = jiffies;
1185 orig_node->orig, orig_neigh_node->orig, total_count,
1220 struct batadv_orig_node *orig_node;
1234 orig_node = batadv_iv_ogm_orig_get(bat_priv, batadv_ogm_packet->orig);
1235 if (!orig_node)
1238 orig_ifinfo = batadv_orig_ifinfo_new(orig_node, if_outgoing);
1240 batadv_orig_node_put(orig_node);
1244 spin_lock_bh(&orig_node->bat_iv.ogm_cnt_lock);
1248 if (!hlist_empty(&orig_node->neigh_list) &&
1257 hlist_for_each_entry_rcu(neigh_node, &orig_node->neigh_list, list) {
1300 spin_unlock_bh(&orig_node->bat_iv.ogm_cnt_lock);
1301 batadv_orig_node_put(orig_node);
1311 * @orig_node: the (cached) orig node for the originator of this OGM
1317 struct batadv_orig_node *orig_node,
1374 router = batadv_orig_router_get(orig_node, if_outgoing);
1376 router_router = batadv_orig_router_get(router->orig_node,
1398 batadv_tvlv_ogm_receive(bat_priv, ogm_packet, orig_node);
1404 orig_neigh_node = orig_node;
1413 batadv_nc_update_nc_node(bat_priv, orig_node, orig_neigh_node,
1428 is_bidirect = batadv_iv_ogm_calc_tq(orig_node, orig_neigh_node,
1435 orig_ifinfo = batadv_orig_ifinfo_new(orig_node, if_outgoing);
1444 batadv_iv_ogm_orig_update(bat_priv, orig_node,
1467 batadv_iv_ogm_forward(orig_node, ethhdr, ogm_packet,
1492 batadv_iv_ogm_forward(orig_node, ethhdr, ogm_packet,
1518 * @orig_node: originator which reproadcasted the OGMs
1523 struct batadv_orig_node *orig_node,
1540 orig_ifinfo = batadv_orig_ifinfo_get(orig_node, if_incoming);
1545 spin_lock_bh(&orig_node->bat_iv.ogm_cnt_lock);
1552 spin_unlock_bh(&orig_node->bat_iv.ogm_cnt_lock);
1567 struct batadv_orig_node *orig_neigh_node, *orig_node;
1669 orig_node = batadv_iv_ogm_orig_get(bat_priv, ogm_packet->orig);
1670 if (!orig_node)
1673 batadv_iv_ogm_process_per_outif(skb, ogm_offset, orig_node,
1687 batadv_iv_ogm_process_per_outif(skb, ogm_offset, orig_node,
1694 batadv_orig_node_put(orig_node);
1788 * @orig_node: the orig_node for which the neighbors are printed
1795 batadv_iv_ogm_orig_print_neigh(struct batadv_orig_node *orig_node,
1802 hlist_for_each_entry_rcu(neigh_node, &orig_node->neigh_list, list) {
1828 struct batadv_orig_node *orig_node;
1842 hlist_for_each_entry_rcu(orig_node, head, hash_entry) {
1843 neigh_node = batadv_orig_router_get(orig_node,
1856 last_seen_jiffies = jiffies - orig_node->last_seen;
1862 orig_node->orig, last_seen_secs,
1867 batadv_iv_ogm_orig_print_neigh(orig_node, if_outgoing,
1919 * @orig_node: Originator to dump
1929 struct batadv_orig_node *orig_node,
1937 last_seen_msecs = jiffies_to_msecs(jiffies - orig_node->last_seen);
1952 orig_node->orig) ||
1980 * @orig_node: Originator to dump
1991 struct batadv_orig_node *orig_node, int *sub_s)
1999 neigh_node_best = batadv_orig_router_get(orig_node, if_outgoing);
2010 hlist_for_each_entry_rcu(neigh_node, &orig_node->neigh_list, list) {
2018 orig_node, neigh_node,
2055 struct batadv_orig_node *orig_node;
2059 hlist_for_each_entry_rcu(orig_node, head, hash_entry) {
2064 if_outgoing, orig_node,
2423 struct batadv_orig_node *orig_node;
2427 orig_node = gw_node->orig_node;
2428 router = batadv_orig_router_get(orig_node, BATADV_IF_DEFAULT);
2495 struct batadv_orig_node *orig_node)
2521 router_orig = batadv_orig_router_get(orig_node, BATADV_IF_DEFAULT);
2563 /* fails if orig_node has no router */
2573 router = batadv_orig_router_get(gw_node->orig_node, BATADV_IF_DEFAULT);
2585 gw_node->orig_node->orig,
2615 /* fails if orig_node has no router */
2649 router = batadv_orig_router_get(gw_node->orig_node, BATADV_IF_DEFAULT);
2678 gw_node->orig_node->orig) ||