Merge tag 'batadv-net-for-davem-20170316' of git://git.open-mesh.org/linux-merge
[platform/kernel/linux-exynos.git] / net / batman-adv / soft-interface.c
index 2e0b346..d042c99 100644 (file)
@@ -1,4 +1,4 @@
-/* Copyright (C) 2007-2016  B.A.T.M.A.N. contributors:
+/* Copyright (C) 2007-2017  B.A.T.M.A.N. contributors:
  *
  * Marek Lindner, Simon Wunderlich
  *
@@ -258,7 +258,8 @@ static int batadv_interface_tx(struct sk_buff *skb,
        ethhdr = eth_hdr(skb);
 
        /* Register the client MAC in the transtable */
-       if (!is_multicast_ether_addr(ethhdr->h_source)) {
+       if (!is_multicast_ether_addr(ethhdr->h_source) &&
+           !batadv_bla_is_loopdetect_mac(ethhdr->h_source)) {
                client_added = batadv_tt_local_add(soft_iface, ethhdr->h_source,
                                                   vid, skb->skb_iif,
                                                   skb->mark);
@@ -481,8 +482,6 @@ void batadv_interface_rx(struct net_device *soft_iface,
        batadv_add_counter(bat_priv, BATADV_CNT_RX_BYTES,
                           skb->len + ETH_HLEN);
 
-       soft_iface->last_rx = jiffies;
-
        /* Let the bridge loop avoidance check the packet. If will
         * not handle it, we can safely push it up.
         */