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