From owner-freebsd-arch@FreeBSD.ORG Tue Oct 5 20:41:26 2004 Return-Path: Delivered-To: freebsd-arch@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 50FB816A4EE for ; Tue, 5 Oct 2004 20:41:26 +0000 (GMT) Received: from duchess.speedfactory.net (duchess.speedfactory.net [66.23.201.84]) by mx1.FreeBSD.org (Postfix) with SMTP id 7EDAE43D3F for ; Tue, 5 Oct 2004 20:41:18 +0000 (GMT) (envelope-from ups@tree.com) Received: (qmail 9425 invoked by uid 89); 5 Oct 2004 20:41:17 -0000 Received: from duchess.speedfactory.net (66.23.201.84) by duchess.speedfactory.net with SMTP; 5 Oct 2004 20:41:17 -0000 Received: (qmail 9413 invoked by uid 89); 5 Oct 2004 20:41:17 -0000 Received: from unknown (HELO palm.tree.com) (66.23.216.49) by duchess.speedfactory.net with SMTP; 5 Oct 2004 20:41:17 -0000 Received: from [127.0.0.1] (localhost.tree.com [127.0.0.1]) by palm.tree.com (8.12.10/8.12.10) with ESMTP id i95KfGmt051683; Tue, 5 Oct 2004 16:41:16 -0400 (EDT) (envelope-from ups@tree.com) From: Stephan Uphoff To: John Baldwin In-Reply-To: <200410051000.15379.jhb@FreeBSD.org> References: <1095468747.31297.241.camel@palm.tree.com> <20041004184939.GA8178@peter.osted.lan> <1096945958.46385.44.camel@palm.tree.com> <200410051000.15379.jhb@FreeBSD.org> Content-Type: text/plain Message-Id: <1097008876.50232.476.camel@palm.tree.com> Mime-Version: 1.0 X-Mailer: Ximian Evolution 1.4.6 Date: Tue, 05 Oct 2004 16:41:16 -0400 Content-Transfer-Encoding: 7bit cc: Peter Holm cc: Julian Elischer cc: "freebsd-arch@freebsd.org" Subject: Re: scheduler (sched_4bsd) questions X-BeenThere: freebsd-arch@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussion related to FreeBSD architecture List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 05 Oct 2004 20:41:26 -0000 On Tue, 2004-10-05 at 10:00, John Baldwin wrote: > On Monday 04 October 2004 11:12 pm, Stephan Uphoff wrote: > > On Mon, 2004-10-04 at 14:49, Peter Holm wrote: > > > On Mon, Oct 04, 2004 at 01:34:38PM -0400, Stephan Uphoff wrote: > > > > ---- snip ---- > > > > > > - but my time budget is limited and Peter has an interesting bug left > > > > that has priority. > > > > > > I'm not closer to being able to create this panic in a controlled way. > > > After a whole day of different tests I finally got this panic: > > > http://www.holm.cc/stress/log/cons81.html. The trigger seems to be one > > > particular Java applet, but it is not easily reproduceable. > > > > > > - Peter > > > > ---- snip ---- > > > > I found a race condition in sleepq_catch_signals / sleepq_resume_thread > > that may cause sleepq_resume_thread to add a thread to the run queue > > that is already there. > > Note that setrunnable() checks the thread state and doesn't call setrunqueue > if the thread is already on the runqueue (see the TDS_RUNQ case in the switch > statement). Is this what you are referring to? Yes - but I misread the TD_CLR_SLEEPING(td) macro and missed that it only makes the thread runable if the bit had been inhibited before. :-( Thanks Stephan