Re: [net-next PATCH v3 2/3] net: TCP thin linear timeouts

From: William Allen Simpson
Date: Fri Feb 12 2010 - 06:19:26 EST


Last year, I'm pretty sure I was on record as thinking this is only a
marginally good idea, that would be better at the application layer.

Also that naming was a bit dicey. Now the names are more descriptive,
but the "force" is a bit overkill.

How about?
NET_TCP_FORCE_THIN_LINEAR_TIMEOUTS -> NET_TCP_THIN_LINEAR_TIMEOUTS
TCP_THIN_LT -> TCP_THIN_LINEAR_TIMEOUTS
TCP_THIN_LT_RETRIES -> TCP_THIN_LINEAR_RETRIES
tcp_force_thin_linear_timeouts -> tcp_thin_linear_timeouts
sysctl_tcp_force_thin_linear_timeouts -> sysctl_tcp_thin_linear_timeouts
tp->thin_lt -> tp->thin_lto

The latter mostly traditional "to" for "timeout", as used most everywhere.


Andreas Petlund wrote:
diff --git a/net/ipv4/tcp_timer.c b/net/ipv4/tcp_timer.c
index de7d1bf..a682479 100644
--- a/net/ipv4/tcp_timer.c
+++ b/net/ipv4/tcp_timer.c
@@ -29,6 +29,7 @@ int sysctl_tcp_keepalive_intvl __read_mostly = TCP_KEEPALIVE_INTVL;
int sysctl_tcp_retries1 __read_mostly = TCP_RETR1;
int sysctl_tcp_retries2 __read_mostly = TCP_RETR2;
int sysctl_tcp_orphan_retries __read_mostly;
+int sysctl_tcp_force_thin_linear_timeouts __read_mostly;
Where is the sysctl initialized?


+ if ((tp->thin_lt || sysctl_tcp_force_thin_linear_timeouts) &&
+ tcp_stream_is_thin(sk) && sk->sk_state == TCP_ESTABLISHED &&
+ icsk->icsk_retransmits <= TCP_THIN_LT_RETRIES) {

Just for efficiency, I'd reorder this
+ if (sk->sk_state == TCP_ESTABLISHED &&
+ (tp->thin_lt || sysctl_tcp_force_thin_linear_timeouts) &&
+ tcp_stream_is_thin(sk) &&
+ icsk->icsk_retransmits <= TCP_THIN_LT_RETRIES) {

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/