diff options
Diffstat (limited to 'net/ipv4')
-rw-r--r-- | net/ipv4/tcp_cong.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/net/ipv4/tcp_cong.c b/net/ipv4/tcp_cong.c index faaee5338bea..8670e68e2ce6 100644 --- a/net/ipv4/tcp_cong.c +++ b/net/ipv4/tcp_cong.c | |||
@@ -335,11 +335,13 @@ void tcp_reno_cong_avoid(struct sock *sk, u32 ack, u32 acked) | |||
335 | return; | 335 | return; |
336 | 336 | ||
337 | /* In "safe" area, increase. */ | 337 | /* In "safe" area, increase. */ |
338 | if (tp->snd_cwnd <= tp->snd_ssthresh) | 338 | if (tp->snd_cwnd <= tp->snd_ssthresh) { |
339 | tcp_slow_start(tp, acked); | 339 | acked = tcp_slow_start(tp, acked); |
340 | if (!acked) | ||
341 | return; | ||
342 | } | ||
340 | /* In dangerous area, increase slowly. */ | 343 | /* In dangerous area, increase slowly. */ |
341 | else | 344 | tcp_cong_avoid_ai(tp, tp->snd_cwnd, acked); |
342 | tcp_cong_avoid_ai(tp, tp->snd_cwnd, 1); | ||
343 | } | 345 | } |
344 | EXPORT_SYMBOL_GPL(tcp_reno_cong_avoid); | 346 | EXPORT_SYMBOL_GPL(tcp_reno_cong_avoid); |
345 | 347 | ||