X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=net%2Fbatman-adv%2Fsoft-interface.c;h=54800c783f96d29e0c9310ac4a7038fa9932ceef;hb=67f4efdce7d85282fbd5832cddc80a07eb89b6d6;hp=2d1f89517d99a7034f4237a674ee65cea354b020;hpb=c53aa5058ad5ca8876a47d6639ad4d4f2c5ed584;p=firefly-linux-kernel-4.4.55.git diff --git a/net/batman-adv/soft-interface.c b/net/batman-adv/soft-interface.c index 2d1f89517d99..54800c783f96 100644 --- a/net/batman-adv/soft-interface.c +++ b/net/batman-adv/soft-interface.c @@ -347,6 +347,12 @@ void batadv_interface_rx(struct net_device *soft_iface, 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 @@ void batadv_interface_rx(struct net_device *soft_iface, 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;