Lines Matching refs:orig_node
120 * @orig: the orig_node of the ogm
192 * batadv_nc_init_orig() - initialise the nc fields of an orig_node
193 * @orig_node: the orig_node which is going to be initialised
195 void batadv_nc_init_orig(struct batadv_orig_node *orig_node)
197 INIT_LIST_HEAD(&orig_node->in_coding_list);
198 INIT_LIST_HEAD(&orig_node->out_coding_list);
199 spin_lock_init(&orig_node->in_coding_list_lock);
200 spin_lock_init(&orig_node->out_coding_list_lock);
214 batadv_orig_node_put(nc_node->orig_node);
363 nc_node->addr, nc_node->orig_node->orig);
374 * @orig_node: orig_node with the nc node entries to be purged
381 struct batadv_orig_node *orig_node,
385 /* Check ingoing nc_node's of this orig_node */
386 batadv_nc_purge_orig_nc_nodes(bat_priv, &orig_node->in_coding_list,
387 &orig_node->in_coding_list_lock,
390 /* Check outgoing nc_node's of this orig_node */
391 batadv_nc_purge_orig_nc_nodes(bat_priv, &orig_node->out_coding_list,
392 &orig_node->out_coding_list_lock,
405 struct batadv_orig_node *orig_node;
411 /* For each orig_node */
416 hlist_for_each_entry_rcu(orig_node, head, hash_entry)
417 batadv_nc_purge_orig(bat_priv, orig_node,
755 * @orig_node: neighboring orig node which may be used as nc candidate
761 * 3) The OGM must be received from the first hop from orig_node.
765 struct batadv_orig_node *orig_node,
772 orig_ifinfo = batadv_orig_ifinfo_get(orig_node, BATADV_IF_DEFAULT);
794 * @orig_node: orig node originating the ogm packet
796 * (can be equal to orig_node)
802 batadv_nc_find_nc_node(struct batadv_orig_node *orig_node,
814 /* Traverse list of nc_nodes to orig_node */
817 if (!batadv_compare_eth(nc_node->addr, orig_node->orig))
836 * @orig_node: orig node originating the ogm packet
838 * (can be equal to orig_node)
845 struct batadv_orig_node *orig_node,
865 nc_node = batadv_nc_find_nc_node(orig_node, orig_neigh_node, in_coding);
878 ether_addr_copy(nc_node->addr, orig_node->orig);
880 nc_node->orig_node = orig_neigh_node;
883 nc_node->addr, nc_node->orig_node->orig);
885 /* Add nc_node to orig_node */
899 * @orig_node: orig node originating the ogm packet
901 * (can be equal to orig_node)
903 * @is_single_hop_neigh: orig_node is a single hop neighbor
906 struct batadv_orig_node *orig_node,
919 if (!test_bit(BATADV_ORIG_CAPA_HAS_NC, &orig_node->capabilities))
923 if (!batadv_can_nc_with_orig(bat_priv, orig_node, ogm_packet) &&
927 /* Add orig_node as in_nc_node on hop */
928 in_nc_node = batadv_nc_get_nc_node(bat_priv, orig_node,
935 /* Add hop as out_nc_node on orig_node */
937 orig_node, false);
1079 router_neigh = batadv_orig_router_get(neigh_node->orig_node,
1090 router_coding = batadv_orig_router_get(neigh_tmp->orig_node,
1344 struct batadv_orig_node *orig_node;
1348 orig_node = batadv_orig_hash_find(bat_priv, eth_src);
1349 if (!orig_node)
1354 &orig_node->out_coding_list, list) {
1368 batadv_orig_node_put(orig_node);
1426 struct batadv_orig_node *orig_node = neigh_node->orig_node;
1431 list_for_each_entry_rcu(nc_node, &orig_node->in_coding_list, list) {
1903 struct batadv_orig_node *orig_node;
1915 /* For each orig_node in this bin */
1917 hlist_for_each_entry_rcu(orig_node, head, hash_entry) {
1921 if (list_empty(&orig_node->in_coding_list) &&
1922 list_empty(&orig_node->out_coding_list))
1925 seq_printf(seq, "Node: %pM\n", orig_node->orig);
1928 /* For each in_nc_node to this orig_node */
1930 &orig_node->in_coding_list,
1935 /* For out_nc_node to this orig_node */
1937 &orig_node->out_coding_list,