|
@@ -335,11 +335,13 @@ void tcp_reno_cong_avoid(struct sock *sk, u32 ack, u32 acked)
|
|
return;
|
|
return;
|
|
|
|
|
|
/* In "safe" area, increase. */
|
|
/* In "safe" area, increase. */
|
|
- if (tp->snd_cwnd <= tp->snd_ssthresh)
|
|
|
|
- tcp_slow_start(tp, acked);
|
|
|
|
|
|
+ if (tp->snd_cwnd <= tp->snd_ssthresh) {
|
|
|
|
+ acked = tcp_slow_start(tp, acked);
|
|
|
|
+ if (!acked)
|
|
|
|
+ return;
|
|
|
|
+ }
|
|
/* In dangerous area, increase slowly. */
|
|
/* In dangerous area, increase slowly. */
|
|
- else
|
|
|
|
- tcp_cong_avoid_ai(tp, tp->snd_cwnd, 1);
|
|
|
|
|
|
+ tcp_cong_avoid_ai(tp, tp->snd_cwnd, acked);
|
|
}
|
|
}
|
|
EXPORT_SYMBOL_GPL(tcp_reno_cong_avoid);
|
|
EXPORT_SYMBOL_GPL(tcp_reno_cong_avoid);
|
|
|
|
|