Browse Source

[TCP]: Unite identical code from two seqno split blocks

Bogus seqno compares just mislead, the code is identical for
both sides of the seqno compare (and was even executed just
once because of return in between).

Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@helsinki.fi>
Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au>
Signed-off-by: David S. Miller <davem@davemloft.net>
Ilpo Järvinen 18 năm trước cách đây
mục cha
commit
ede9f3b186
1 tập tin đã thay đổi với 1 bổ sung6 xóa
  1. 1 6
      net/ipv4/tcp_input.c

+ 1 - 6
net/ipv4/tcp_input.c

@@ -1246,8 +1246,7 @@ static int tcp_sacktag_one(struct sk_buff *skb, struct tcp_sock *tp,
 	if (dup_sack && (sacked & TCPCB_RETRANS)) {
 		if (after(TCP_SKB_CB(skb)->end_seq, tp->undo_marker))
 			tp->undo_retrans--;
-		if (!after(TCP_SKB_CB(skb)->end_seq, tp->snd_una) &&
-		    (sacked & TCPCB_SACKED_ACKED))
+		if (sacked & TCPCB_SACKED_ACKED)
 			*reord = min(fack_count, *reord);
 	}
 
@@ -1310,10 +1309,6 @@ static int tcp_sacktag_one(struct sk_buff *skb, struct tcp_sock *tp,
 
 		if (after(TCP_SKB_CB(skb)->seq, tcp_highest_sack_seq(tp)))
 			tp->highest_sack = skb;
-
-	} else {
-		if (dup_sack && (sacked & TCPCB_RETRANS))
-			*reord = min(fack_count, *reord);
 	}
 
 	/* D-SACK. We can detect redundant retransmission in S|R and plain R