Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 56a5ca84 authored by Simon Wunderlich's avatar Simon Wunderlich Committed by Antonio Quartulli
Browse files

batman-adv: remove useless find_router look up



This is not used anymore with the new fragmentation, and it might
actually mess up the bonding code because find_router() assumes it
is only called once per packet.

Signed-off-by: default avatarSimon Wunderlich <simon@open-mesh.com>
Signed-off-by: default avatarMarek Lindner <lindner_marek@yahoo.de>
Signed-off-by: default avatarAntonio Quartulli <antonio@meshcoding.com>
parent 411d6ed9
Loading
Loading
Loading
Loading
+8 −21
Original line number Original line Diff line number Diff line
@@ -250,30 +250,19 @@ int batadv_send_skb_generic_unicast(struct batadv_priv *bat_priv,
	struct ethhdr *ethhdr = (struct ethhdr *)skb->data;
	struct ethhdr *ethhdr = (struct ethhdr *)skb->data;
	struct batadv_unicast_packet *unicast_packet;
	struct batadv_unicast_packet *unicast_packet;
	struct batadv_orig_node *orig_node;
	struct batadv_orig_node *orig_node;
	struct batadv_neigh_node *neigh_node;
	int ret = NET_RX_DROP;
	int ret = NET_RX_DROP;


	/* get routing information */
	/* get routing information */
	if (is_multicast_ether_addr(ethhdr->h_dest)) {
	if (is_multicast_ether_addr(ethhdr->h_dest))
		orig_node = batadv_gw_get_selected_orig(bat_priv);
		orig_node = batadv_gw_get_selected_orig(bat_priv);
		if (orig_node)
	else
			goto find_router;
	}

		/* check for tt host - increases orig_node refcount.
		/* check for tt host - increases orig_node refcount.
		 * returns NULL in case of AP isolation
		 * returns NULL in case of AP isolation
		 */
		 */
		orig_node = batadv_transtable_search(bat_priv, ethhdr->h_source,
		orig_node = batadv_transtable_search(bat_priv, ethhdr->h_source,
						     ethhdr->h_dest);
						     ethhdr->h_dest);


find_router:
	if (!orig_node)
	/* find_router():
	 *  - if orig_node is NULL it returns NULL
	 *  - increases neigh_nodes refcount if found.
	 */
	neigh_node = batadv_find_router(bat_priv, orig_node, NULL);

	if (!neigh_node)
		goto out;
		goto out;


	switch (packet_type) {
	switch (packet_type) {
@@ -305,8 +294,6 @@ find_router:
		ret = 0;
		ret = 0;


out:
out:
	if (neigh_node)
		batadv_neigh_node_free_ref(neigh_node);
	if (orig_node)
	if (orig_node)
		batadv_orig_node_free_ref(orig_node);
		batadv_orig_node_free_ref(orig_node);
	if (ret == NET_RX_DROP)
	if (ret == NET_RX_DROP)