/* TCP Reno congestion control This is special case used for fallback as well.  */
void tcp_reno_cong_avoid(struct sock *sk, u32 ack, u32 in_flight)
/* TCP Reno congestion control This is special case used for fallback as well.  */
void tcp_reno_cong_avoid(struct sock *sk, u32 ack, u32 in_flight)
{
	struct tcp_sock *tp = tcp_sk(sk);
	if (!tcp_is_cwnd_limited(sk, in_flight))
		return;
	if (tp->snd_cwnd <= tp->snd_ssthresh)
		tcp_slow_start(tp);
	else if (sysctl_tcp_abc) {
		if (tp->bytes_acked >= tp->snd_cwnd*tp->mss_cache) {
			tp->bytes_acked -= tp->snd_cwnd*tp->mss_cache;
			if (tp->snd_cwnd < tp->snd_cwnd_clamp)
				tp->snd_cwnd++;
		}
	} else {
		tcp_cong_avoid_ai(tp, tp->snd_cwnd);
	}
}