kern/108670: TCP connection ETIMEDOUT

Dave Baukus david.baukus at us.fujitsu.com
Fri Feb 2 16:10:20 UTC 2007


The following reply was made to PR kern/108670; it has been noted by GNATS.

From: Dave Baukus <david.baukus at us.fujitsu.com>
To: FreeBSD-gnats-submit at freebsd.org, freebsd-bugs at freebsd.org
Cc:  
Subject: Re: kern/108670: TCP connection ETIMEDOUT
Date: Fri, 02 Feb 2007 09:30:14 -0600

 I realized, late last night, that I was wrong on a few
 details concerning this bug:
 
 1.) The retransmit timer does not keep popping on without
 being restarted.
 
 2.) ip_output() must return ENOBUFS (TCP_MAXRXTSHIFT + 1) times
 to the same, non-transmitting TCP.
 
 3.) Given a TCP as described below, when tcp_output() uses ENOBUFS
 to blindly start the retransmit timer then tp->t_rxtshift will be
 falsely incremented and never cleared.
 
 Thus the bug manifests itself because it appears for a TCP that
 never transmits nobody ever clears clears tp->t_rxtshift;
 this allows tp->t_rxtshift to slowly count up to TCP_MAXRXTSHIFT;
 once TCP_MAXRXTSHIFT is exceeded tcp_timer_rexmt() will
 kill the poor innocent TCP.
 
 
 On 02/01/07 17:40, FreeBSD-gnats-submit at FreeBSD.org wrote:
 > Thank you very much for your problem report.
 > It has the internal identification `kern/108670'.
 > The individual assigned to look at your
 > report is: freebsd-bugs. 
 > 
 > You can access the state of your problem report at any time
 > via this link:
 > 
 > http://www.freebsd.org/cgi/query-pr.cgi?pr=108670
 > 
 > 
 >>Category:       kern
 >>Responsible:    freebsd-bugs
 >>Synopsis:       TCP connection ETIMEDOUT
 >>Arrival-Date:   Thu Feb 01 23:40:18 GMT 2007
 > 
 > 
 
 -- 
 Dave Baukus
     david.baukus at us.fujitsu.com
     972-479-2491
 
     Fujitsu Network Communications
           Richardson, Texas
                   USA


More information about the freebsd-bugs mailing list