Re: simplify microsecond rtt sampling

2006-09-28 Thread David Miller
From: Stephen Hemminger <[EMAIL PROTECTED]> Date: Thu, 28 Sep 2006 09:36:50 -0700 > On Thu, 28 Sep 2006 13:47:28 +0100 > John Heffner <[EMAIL PROTECTED]> wrote: > > > Sigh. Here's one that's not corrupted. And for the record: > > > > > > This changes the microsecond RTT sampling so that sampl

Re: simplify microsecond rtt sampling

2006-09-28 Thread Stephen Hemminger
On Thu, 28 Sep 2006 13:47:28 +0100 John Heffner <[EMAIL PROTECTED]> wrote: > Sigh. Here's one that's not corrupted. And for the record: > > > This changes the microsecond RTT sampling so that samples are taken in > the same way that RTT samples are taken for the RTO calculator: on the > last

Re: simplify microsecond rtt sampling

2006-09-28 Thread John Heffner
Sigh. Here's one that's not corrupted. And for the record: This changes the microsecond RTT sampling so that samples are taken in the same way that RTT samples are taken for the RTO calculator: on the last segment acknowledged, and only when the segment hasn't been retransmitted. Signed-

Re: simplify microsecond rtt sampling

2006-09-28 Thread John Heffner
Here is a corrected patch. Signed-off-by: John Heffner <[EMAIL PROTECTED]> -static u32 tcp_usrtt(const struct sk_buff *skb) +static u32 tcp_usrtt(struct timeval *tv) { - struct timeval tv, now; + struct timeval now; do_gettimeofday(&now); - skb_get_timestamp(skb, &t

Re: simplify microsecond rtt sampling

2006-09-27 Thread John Heffner
Okay, this patch is junk (never trust compile-tested code). Will send something better soon. -John John Heffner wrote: About commit 2d2abbab63f6726a147ae61ada39bf2c9ee0db9a: It looks like this patch bypassed the enforcement of Karn's algorithm in tcp_ack_no_tstamp() for the purposes of u

Re: simplify microsecond rtt sampling

2006-09-27 Thread John Heffner
About commit 2d2abbab63f6726a147ae61ada39bf2c9ee0db9a: It looks like this patch bypassed the enforcement of Karn's algorithm in tcp_ack_no_tstamp() for the purposes of usec RTT sampling used by congestion control modules. This will give them bad RTT data when there are retransmits. I haven't