When lost messages are retransmitted, they also carry ACK. So, l->rcv_unacked needs to be reset.
Fixes: 9195948fbf34 ("tipc: improve TIPC throughput by Gap ACK blocks") Signed-off-by: Tung Nguyen <tung.q.ngu...@dektech.com.au> --- net/tipc/link.c | 1 + 1 file changed, 1 insertion(+) diff --git a/net/tipc/link.c b/net/tipc/link.c index fb72031..7660e5a 100644 --- a/net/tipc/link.c +++ b/net/tipc/link.c @@ -1448,6 +1448,7 @@ static int tipc_link_advance_transmq(struct tipc_link *l, u16 acked, u16 gap, msg_set_bcast_ack(hdr, bc_ack); _skb->priority = TC_PRIO_CONTROL; __skb_queue_tail(xmitq, _skb); + l->rcv_unacked = 0; l->stats.retransmitted++; /* Increase actual retrans counter & mark first time */ -- 2.1.4 _______________________________________________ tipc-discussion mailing list tipc-discussion@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/tipc-discussion