aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--net/batman-adv/routing.c9
1 files changed, 4 insertions, 5 deletions
diff --git a/net/batman-adv/routing.c b/net/batman-adv/routing.c
index 368ceeba8145..934f1f2f86c6 100644
--- a/net/batman-adv/routing.c
+++ b/net/batman-adv/routing.c
@@ -698,17 +698,16 @@ void receive_bat_packet(const struct ethhdr *ethhdr,
698 698
699 /* neighbor has to indicate direct link and it has to 699 /* neighbor has to indicate direct link and it has to
700 * come via the corresponding interface */ 700 * come via the corresponding interface */
701 /* if received seqno equals last send seqno save new 701 /* save packet seqno for bidirectional check */
702 * seqno for bidirectional check */
703 if (has_directlink_flag && 702 if (has_directlink_flag &&
704 compare_eth(if_incoming->net_dev->dev_addr, 703 compare_eth(if_incoming->net_dev->dev_addr,
705 batman_packet->orig) && 704 batman_packet->orig)) {
706 (batman_packet->seqno - if_incoming_seqno + 2 == 0)) {
707 offset = if_incoming->if_num * NUM_WORDS; 705 offset = if_incoming->if_num * NUM_WORDS;
708 706
709 spin_lock_bh(&orig_neigh_node->ogm_cnt_lock); 707 spin_lock_bh(&orig_neigh_node->ogm_cnt_lock);
710 word = &(orig_neigh_node->bcast_own[offset]); 708 word = &(orig_neigh_node->bcast_own[offset]);
711 bit_mark(word, 0); 709 bit_mark(word,
710 if_incoming_seqno - batman_packet->seqno - 2);
712 orig_neigh_node->bcast_own_sum[if_incoming->if_num] = 711 orig_neigh_node->bcast_own_sum[if_incoming->if_num] =
713 bit_packet_count(word); 712 bit_packet_count(word);
714 spin_unlock_bh(&orig_neigh_node->ogm_cnt_lock); 713 spin_unlock_bh(&orig_neigh_node->ogm_cnt_lock);