]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - net/ipv4/tcp_veno.c
Merge branch 'pm-cpufreq'
[karo-tx-linux.git] / net / ipv4 / tcp_veno.c
index ac43cd747bcebdd83ce98fb26c3f7b1496ea3c69..326475a94865c2fd0cbcf7bffe97c21d37159683 100644 (file)
@@ -114,13 +114,14 @@ static void tcp_veno_cwnd_event(struct sock *sk, enum tcp_ca_event event)
                tcp_veno_init(sk);
 }
 
-static void tcp_veno_cong_avoid(struct sock *sk, u32 ack, u32 in_flight)
+static void tcp_veno_cong_avoid(struct sock *sk, u32 ack, u32 acked,
+                               u32 in_flight)
 {
        struct tcp_sock *tp = tcp_sk(sk);
        struct veno *veno = inet_csk_ca(sk);
 
        if (!veno->doing_veno_now) {
-               tcp_reno_cong_avoid(sk, ack, in_flight);
+               tcp_reno_cong_avoid(sk, ack, acked, in_flight);
                return;
        }
 
@@ -133,7 +134,7 @@ static void tcp_veno_cong_avoid(struct sock *sk, u32 ack, u32 in_flight)
                /* We don't have enough rtt samples to do the Veno
                 * calculation, so we'll behave like Reno.
                 */
-               tcp_reno_cong_avoid(sk, ack, in_flight);
+               tcp_reno_cong_avoid(sk, ack, acked, in_flight);
        } else {
                u64 target_cwnd;
                u32 rtt;
@@ -152,7 +153,7 @@ static void tcp_veno_cong_avoid(struct sock *sk, u32 ack, u32 in_flight)
 
                if (tp->snd_cwnd <= tp->snd_ssthresh) {
                        /* Slow start.  */
-                       tcp_slow_start(tp);
+                       tcp_slow_start(tp, acked);
                } else {
                        /* Congestion avoidance. */
                        if (veno->diff < beta) {