From: Ilpo Järvinen Date: Sat, 28 Feb 2009 04:44:27 +0000 (+0000) Subject: tcp: don't backtrack to sacked skbs X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=ac11ba753f3aa839292c1a3b6c971c637ad2e839;p=openwrt%2Fstaging%2Fblogic.git tcp: don't backtrack to sacked skbs Backtracking to sacked skbs is a horrible performance killer since the hint cannot be advanced successfully past them... ...And it's totally unnecessary too. In theory this is 2.6.27..28 regression but I doubt anybody can make .28 to have worse performance because of other TCP improvements. Signed-off-by: Ilpo Järvinen Signed-off-by: David S. Miller --- diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index f6f61b3e677b..2471cd4f66db 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c @@ -2065,7 +2065,7 @@ begin_fwd: goto begin_fwd; } else if (!(sacked & TCPCB_LOST)) { - if (hole == NULL && !(sacked & TCPCB_SACKED_RETRANS)) + if (hole == NULL && !(sacked & (TCPCB_SACKED_RETRANS|TCPCB_SACKED_ACKED))) hole = skb; continue;