diff --git a/net/ipv4/tcp_input.c b/net/ipv4/tcp_input.c index 96c179752823e8f6c8a59f0cac1463faca1d370a..9ad4312a4790f0a7a8a098c2a9650ad358d2b1ea 100644 --- a/net/ipv4/tcp_input.c +++ b/net/ipv4/tcp_input.c @@ -1716,8 +1716,11 @@ tcp_sacktag_write_queue(struct sock *sk, const struct sk_buff *ack_skb, } /* Ignore very old stuff early */ - if (!after(sp[used_sacks].end_seq, prior_snd_una)) + if (!after(sp[used_sacks].end_seq, prior_snd_una)) { + if (i == 0) + first_sack_index = -1; continue; + } used_sacks++; }