From: [EMAIL PROTECTED]
Date: Thu, 10 Nov 2005 15:15:10 -0800

> Simplify the TCP congestion infrastructure.  Can fold the
> packets acked into the cong_avoid hook. 
> 
> Signed-off-by: Stephen Hemminger <[EMAIL PROTECTED]>

This patch would break at least BIC.

Before this change, the "good_ack" parameter to ->cong_avoid()
indicates whether tcp_ack_is_dubious() is true or not.  This is
different from whether any data packets were ack'd fully or not,
which is what you're passing in there now.

The comment above a test in bictcp_low_utilization is the hint:

>            /* this delay samples may not be accurate */
> -          flag == 0) {
> +          pkts_acked == 0) {

And "pkts_acked == 0" is thus not equivalent to the existing
"flag == 0" check.

> @@ -2359,11 +2355,11 @@ static int tcp_ack(struct sock *sk, stru
>       if (tcp_ack_is_dubious(sk, flag)) {
>               /* Advanve CWND, if state allows this. */
>               if ((flag & FLAG_DATA_ACKED) && tcp_may_raise_cwnd(sk, flag))
> -                     tcp_cong_avoid(sk, ack,  seq_rtt, prior_in_flight, 0);
> +                     tcp_cong_avoid(sk, ack,  seq_rtt, prior_in_flight, 
> pkts_acked);
>               tcp_fastretrans_alert(sk, prior_snd_una, prior_packets, flag);
>       } else {
>               if ((flag & FLAG_DATA_ACKED))
> -                     tcp_cong_avoid(sk, ack, seq_rtt, prior_in_flight, 1);
> +                     tcp_cong_avoid(sk, ack, seq_rtt, prior_in_flight, 
> pkts_acked);
>       }

See?
-
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to