From owner-freebsd-bugs@FreeBSD.ORG Fri Feb 2 16:10:19 2007 Return-Path: X-Original-To: freebsd-bugs@hub.freebsd.org Delivered-To: freebsd-bugs@hub.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id F098D16A4B3 for ; Fri, 2 Feb 2007 16:10:19 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [69.147.83.40]) by mx1.freebsd.org (Postfix) with ESMTP id 2539713C4A7 for ; Fri, 2 Feb 2007 16:10:17 +0000 (UTC) (envelope-from gnats@FreeBSD.org) Received: from freefall.freebsd.org (gnats@localhost [127.0.0.1]) by freefall.freebsd.org (8.13.4/8.13.4) with ESMTP id l12GAGGv025505 for ; Fri, 2 Feb 2007 16:10:16 GMT (envelope-from gnats@freefall.freebsd.org) Received: (from gnats@localhost) by freefall.freebsd.org (8.13.4/8.13.4/Submit) id l12GAGD0025504; Fri, 2 Feb 2007 16:10:16 GMT (envelope-from gnats) Date: Fri, 2 Feb 2007 16:10:16 GMT Message-Id: <200702021610.l12GAGD0025504@freefall.freebsd.org> To: freebsd-bugs@FreeBSD.org From: Dave Baukus Cc: Subject: Re: kern/108670: TCP connection ETIMEDOUT X-BeenThere: freebsd-bugs@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list Reply-To: Dave Baukus List-Id: Bug reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 02 Feb 2007 16:10:20 -0000 The following reply was made to PR kern/108670; it has been noted by GNATS. From: Dave Baukus To: FreeBSD-gnats-submit@freebsd.org, freebsd-bugs@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@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@us.fujitsu.com 972-479-2491 Fujitsu Network Communications Richardson, Texas USA