Patchwork [6/6] tcp_cubic: enable high resolution ack time if needed

login
register
mail settings
Submitter stephen hemminger
Date March 10, 2011, 4:51 p.m.
Message ID <20110310165329.281291096@vyatta.com>
Download mbox | patch
Permalink /patch/86311/
State Superseded
Delegated to: David Miller
Headers show

Comments

stephen hemminger - March 10, 2011, 4:51 p.m.
This is a refined version of an earlier patch by Lucas Nussbaum.
Cubic needs RTT values in milliseconds. If HZ < 1000 then
the values will be too coarse.

Signed-off-by: Stephen Hemminger <shemminger@vyatta.com>




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

Patch

--- a/net/ipv4/tcp_cubic.c	2011-03-10 08:35:59.968882888 -0800
+++ b/net/ipv4/tcp_cubic.c	2011-03-10 08:36:10.241016524 -0800
@@ -459,6 +459,10 @@  static int __init cubictcp_register(void
 	/* divide by bic_scale and by constant Srtt (100ms) */
 	do_div(cube_factor, bic_scale * 10);
 
+	/* hystart needs ms clock resolution */
+	if (hystart && HZ < 1000)
+		cubictcp.flags |= TCP_CONG_RTT_STAMP;
+
 	return tcp_register_congestion_control(&cubictcp);
 }