diff options
| author | Ilpo Järvinen <[email protected]> | 2007-10-12 00:36:13 +0000 |
|---|---|---|
| committer | David S. Miller <[email protected]> | 2007-10-12 00:36:13 +0000 |
| commit | b08d6cb22c777c8c91c16d8e3b8aafc93c98cbd9 (patch) | |
| tree | 139b1f2636c42698bd7b0f0ccd61f0e1b8a826ab /net/ipv4/tcp_output.c | |
| parent | [TCP]: Fix lost_retrans loop vs fastpath problems (diff) | |
| download | kernel-b08d6cb22c777c8c91c16d8e3b8aafc93c98cbd9.tar.gz kernel-b08d6cb22c777c8c91c16d8e3b8aafc93c98cbd9.zip | |
[TCP]: Limit processing lost_retrans loop to work-to-do cases
This addition of lost_retrans_low to tcp_sock might be
unnecessary, it's not clear how often lost_retrans worker is
executed when there wasn't work to do.
Signed-off-by: Ilpo Järvinen <[email protected]>
Signed-off-by: David S. Miller <[email protected]>
Diffstat (limited to 'net/ipv4/tcp_output.c')
| -rw-r--r-- | net/ipv4/tcp_output.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index 53296753b0bd..324b4207254a 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c @@ -1914,6 +1914,8 @@ int tcp_retransmit_skb(struct sock *sk, struct sk_buff *skb) printk(KERN_DEBUG "retrans_out leaked.\n"); } #endif + if (!tp->retrans_out) + tp->lost_retrans_low = tp->snd_nxt; TCP_SKB_CB(skb)->sacked |= TCPCB_RETRANS; tp->retrans_out += tcp_skb_pcount(skb); |
