From owner-cvs-src@FreeBSD.ORG Sat Apr 1 21:10:38 2006 Return-Path: X-Original-To: cvs-src@freebsd.org Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 3CBD516A427; Sat, 1 Apr 2006 21:10:38 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.FreeBSD.org (Postfix) with ESMTP id AF47F43D49; Sat, 1 Apr 2006 21:10:37 +0000 (GMT) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 57D1546B08; Sat, 1 Apr 2006 16:10:37 -0500 (EST) Date: Sat, 1 Apr 2006 21:10:37 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Peter Jeremy In-Reply-To: <20060401204129.GB684@turion.vk2pj.dyndns.org> Message-ID: <20060401211002.J82503@fledge.watson.org> References: <200604011636.k31GabRv029962@repoman.freebsd.org> <20060401204129.GB684@turion.vk2pj.dyndns.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: cvs-src@freebsd.org, src-committers@freebsd.org, cvs-all@freebsd.org Subject: Re: cvs commit: src/sys/netinet tcp_input.c tcp_subr.c tcp_timer.c tcp_usrreq.c tcp_var.h X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 01 Apr 2006 21:10:38 -0000 On Sun, 2 Apr 2006, Peter Jeremy wrote: > On Sat, 2006-Apr-01 16:36:37 +0000, Robert Watson wrote: >> - Annotate the existence of a long-standing race in the TCP timer code, >> in which timers are stopped but not drained when the socket is freed, >> as waiting for drain may lead to deadlocks, or have to occur in a >> context where waiting is not permitted. This race has been handled >> by testing to see if the tcpcb pointer in the inpcb is NULL (and vice >> versa), which is not normally permitted, but may be true of a inpcb >> and tcpcb have been freed. Add a counter to test how often this race >> has actually occurred, and a large comment for each instance where >> we compare potentially freed memory with NULL. This will have to be >> fixed in the near future, but requires is to further address how to >> handle the timer shutdown shutdown issue. > > Is it worthwhile (or possible) to merge this bit into 6.x earlier to provide > greater exposure and therefore more statistics on the occurrence of this > race? Yes. I'll merge it after 6.1. If I forget, please remind me. Robert N M Watson