diff options
Diffstat (limited to 'net')
| -rw-r--r-- | net/ipv4/tcp_bic.c | 2 | ||||
| -rw-r--r-- | net/ipv4/tcp_cong.c | 2 | ||||
| -rw-r--r-- | net/ipv4/tcp_highspeed.c | 4 | ||||
| -rw-r--r-- | net/ipv4/tcp_htcp.c | 2 | ||||
| -rw-r--r-- | net/ipv4/tcp_hybla.c | 6 | ||||
| -rw-r--r-- | net/ipv4/tcp_output.c | 1 | ||||
| -rw-r--r-- | net/ipv4/tcp_scalable.c | 3 | 
7 files changed, 11 insertions, 9 deletions
diff --git a/net/ipv4/tcp_bic.c b/net/ipv4/tcp_bic.c index ae35e0609047..5af99b3ef5d7 100644 --- a/net/ipv4/tcp_bic.c +++ b/net/ipv4/tcp_bic.c @@ -217,7 +217,7 @@ static void bictcp_cong_avoid(struct sock *sk, u32 ack,  	bictcp_low_utilization(sk, data_acked); -	if (in_flight < tp->snd_cwnd) +	if (!tcp_is_cwnd_limited(sk, in_flight))  		return;  	if (tp->snd_cwnd <= tp->snd_ssthresh) { diff --git a/net/ipv4/tcp_cong.c b/net/ipv4/tcp_cong.c index bbf2d6624e89..0705b496c6b3 100644 --- a/net/ipv4/tcp_cong.c +++ b/net/ipv4/tcp_cong.c @@ -186,7 +186,7 @@ void tcp_reno_cong_avoid(struct sock *sk, u32 ack, u32 rtt, u32 in_flight,  {  	struct tcp_sock *tp = tcp_sk(sk); -	if (in_flight < tp->snd_cwnd) +	if (!tcp_is_cwnd_limited(sk, in_flight))  		return;          if (tp->snd_cwnd <= tp->snd_ssthresh) { diff --git a/net/ipv4/tcp_highspeed.c b/net/ipv4/tcp_highspeed.c index 6acc04bde080..5e56ad368dd2 100644 --- a/net/ipv4/tcp_highspeed.c +++ b/net/ipv4/tcp_highspeed.c @@ -111,12 +111,12 @@ static void hstcp_init(struct sock *sk)  }  static void hstcp_cong_avoid(struct sock *sk, u32 adk, u32 rtt, -			     u32 in_flight, int good) +			     u32 in_flight, u32 pkts_acked)  {  	struct tcp_sock *tp = tcp_sk(sk);  	struct hstcp *ca = inet_csk_ca(sk); -	if (in_flight < tp->snd_cwnd) +	if (!tcp_is_cwnd_limited(sk, in_flight))  		return;  	if (tp->snd_cwnd <= tp->snd_ssthresh) { diff --git a/net/ipv4/tcp_htcp.c b/net/ipv4/tcp_htcp.c index e47b37984e95..404a326ba345 100644 --- a/net/ipv4/tcp_htcp.c +++ b/net/ipv4/tcp_htcp.c @@ -207,7 +207,7 @@ static void htcp_cong_avoid(struct sock *sk, u32 ack, u32 rtt,  	struct tcp_sock *tp = tcp_sk(sk);  	struct htcp *ca = inet_csk_ca(sk); -	if (in_flight < tp->snd_cwnd) +	if (!tcp_is_cwnd_limited(sk, in_flight))  		return;          if (tp->snd_cwnd <= tp->snd_ssthresh) { diff --git a/net/ipv4/tcp_hybla.c b/net/ipv4/tcp_hybla.c index 77add63623df..40dbb3877510 100644 --- a/net/ipv4/tcp_hybla.c +++ b/net/ipv4/tcp_hybla.c @@ -100,12 +100,12 @@ static void hybla_cong_avoid(struct sock *sk, u32 ack, u32 rtt,  		ca->minrtt = tp->srtt;  	} +	if (!tcp_is_cwnd_limited(sk, in_flight)) +		return; +  	if (!ca->hybla_en)  		return tcp_reno_cong_avoid(sk, ack, rtt, in_flight, flag); -	if (in_flight < tp->snd_cwnd) -		return; -  	if (ca->rho == 0)  		hybla_recalc_param(sk); diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c index b907456a79f4..998f6416ef8b 100644 --- a/net/ipv4/tcp_output.c +++ b/net/ipv4/tcp_output.c @@ -2058,3 +2058,4 @@ EXPORT_SYMBOL(tcp_connect);  EXPORT_SYMBOL(tcp_make_synack);  EXPORT_SYMBOL(tcp_simple_retransmit);  EXPORT_SYMBOL(tcp_sync_mss); +EXPORT_SYMBOL(sysctl_tcp_tso_win_divisor); diff --git a/net/ipv4/tcp_scalable.c b/net/ipv4/tcp_scalable.c index 327770bf5522..a2fd25617d24 100644 --- a/net/ipv4/tcp_scalable.c +++ b/net/ipv4/tcp_scalable.c @@ -20,7 +20,8 @@ static void tcp_scalable_cong_avoid(struct sock *sk, u32 ack, u32 rtt,  				    u32 in_flight, int flag)  {  	struct tcp_sock *tp = tcp_sk(sk); -	if (in_flight < tp->snd_cwnd) + +	if (!tcp_is_cwnd_limited(sk, in_flight))  		return;  	if (tp->snd_cwnd <= tp->snd_ssthresh) {  | 

