The following commit has been merged in the merge/master branch: commit aa020218f6126ca8b4c2a2deb2a640cace665aa2 Merge: 94668774eec54bf17022f005c47ba3d9aa237e4e 7f05664526b213452f2d1bc8f2e120899752f15d Author: Antonio Quartulli ordex@autistici.org Date: Tue Nov 13 09:51:18 2012 +0100
Merge remote-tracking branch 'pkg/next' into merge/master
diff --combined net/batman-adv/soft-interface.c index 2d1f895,54800c7..54800c7 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c @@@ -347,6 -347,12 +347,12 @@@ void batadv_interface_rx(struct net_dev
soft_iface->last_rx = jiffies;
+ /* Let the bridge loop avoidance check the packet. If will + * not handle it, we can safely push it up. + */ + if (batadv_bla_rx(bat_priv, skb, vid, is_bcast)) + goto out; + if (orig_node) batadv_tt_add_temporary_global_entry(bat_priv, orig_node, ethhdr->h_source); @@@ -354,12 -360,6 +360,6 @@@ if (batadv_is_ap_isolated(bat_priv, ethhdr->h_source, ethhdr->h_dest)) goto dropped;
- /* Let the bridge loop avoidance check the packet. If will - * not handle it, we can safely push it up. - */ - if (batadv_bla_rx(bat_priv, skb, vid, is_bcast)) - goto out; - netif_rx(skb); goto out;
diff --combined net/batman-adv/translation-table.c index cb0281a,22457a7..22457a7 --- a/net/batman-adv/translation-table.c +++ b/net/batman-adv/translation-table.c @@@ -2545,7 -2545,7 +2545,7 @@@ bool batadv_tt_local_client_is_roaming( if (!tt_local_entry) goto out;
- ret = !!(tt_local_entry->common.flags & BATADV_TT_CLIENT_ROAM); + ret = tt_local_entry->common.flags & BATADV_TT_CLIENT_ROAM; batadv_tt_local_entry_free_ref(tt_local_entry); out: return ret; @@@ -2558,6 -2558,13 +2558,13 @@@ bool batadv_tt_add_temporary_global_ent { bool ret = false;
+ /* if the originator is a backbone node (meaning it belongs to the same + * LAN of this node) the temporary client must not be added because to + * reach such destination the node must use the LAN instead of the mesh + */ + if (batadv_bla_is_backbone_gw_orig(bat_priv, orig_node->orig)) + goto out; + if (!batadv_tt_global_add(bat_priv, orig_node, addr, BATADV_TT_CLIENT_TEMP, atomic_read(&orig_node->last_ttvn)))