Skip to content

Commit

Permalink
batman-adv: remove useless find_router look up
Browse files Browse the repository at this point in the history
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: Simon Wunderlich <simon@open-mesh.com>
Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
Signed-off-by: Antonio Quartulli <antonio@meshcoding.com>
  • Loading branch information
Simon Wunderlich authored and Antonio Quartulli committed Oct 12, 2013
1 parent 411d6ed commit 56a5ca8
Showing 1 changed file with 8 additions and 21 deletions.
29 changes: 8 additions & 21 deletions net/batman-adv/send.c
Original file line number Diff line number Diff line change
Expand Up @@ -250,30 +250,19 @@ int batadv_send_skb_generic_unicast(struct batadv_priv *bat_priv,
struct ethhdr *ethhdr = (struct ethhdr *)skb->data;
struct batadv_unicast_packet *unicast_packet;
struct batadv_orig_node *orig_node;
struct batadv_neigh_node *neigh_node;
int ret = NET_RX_DROP;

/* 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);
if (orig_node)
goto find_router;
}

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

find_router:
/* 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);
else
/* check for tt host - increases orig_node refcount.
* returns NULL in case of AP isolation
*/
orig_node = batadv_transtable_search(bat_priv, ethhdr->h_source,
ethhdr->h_dest);

if (!neigh_node)
if (!orig_node)
goto out;

switch (packet_type) {
Expand Down Expand Up @@ -305,8 +294,6 @@ int batadv_send_skb_generic_unicast(struct batadv_priv *bat_priv,
ret = 0;

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

0 comments on commit 56a5ca8

Please sign in to comment.