From owner-freebsd-current@FreeBSD.ORG Sat Aug 14 22:35:17 2004 Return-Path: Delivered-To: freebsd-current@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 7874016A4CE for ; Sat, 14 Aug 2004 22:35:17 +0000 (GMT) Received: from smtp005.bizmail.sc5.yahoo.com (smtp005.bizmail.sc5.yahoo.com [66.163.175.82]) by mx1.FreeBSD.org (Postfix) with SMTP id 5B03143D39 for ; Sat, 14 Aug 2004 22:35:17 +0000 (GMT) (envelope-from noackjr@alumni.rice.edu) Received: from unknown (HELO optimator.noacks.org) (noackjr@supercrime.org@70.240.234.183 with login) by smtp005.bizmail.sc5.yahoo.com with SMTP; 14 Aug 2004 22:35:17 -0000 Received: from localhost (localhost [127.0.0.1]) by optimator.noacks.org (Postfix) with ESMTP id D640861E1; Sat, 14 Aug 2004 17:35:15 -0500 (CDT) Received: from optimator.noacks.org ([127.0.0.1]) by localhost (optimator.noacks.org [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 05077-08; Sat, 14 Aug 2004 17:35:11 -0500 (CDT) Received: from compgeek.noacks.org (compgeek [192.168.1.10]) by optimator.noacks.org (Postfix) with ESMTP id AD2B361D9; Sat, 14 Aug 2004 17:35:10 -0500 (CDT) Received: from [127.0.0.1] (localhost [127.0.0.1]) by compgeek.noacks.org (8.13.1/8.13.1) with ESMTP id i7EMZ51K003324; Sat, 14 Aug 2004 17:35:08 -0500 (CDT) (envelope-from noackjr@alumni.rice.edu) Message-ID: <411E9399.3050200@alumni.rice.edu> Date: Sat, 14 Aug 2004 17:35:05 -0500 From: Jon Noack User-Agent: Mozilla Thunderbird 0.7.3 (X11/20040806) X-Accept-Language: en-us, en MIME-Version: 1.0 To: Scott Long References: <20040813121208.M31181@cvs.imp.ch> <20040813102922.E93695@carver.gumbysoft.com> <411D20DF.2000503@samsco.org> In-Reply-To: <411D20DF.2000503@samsco.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-Virus-Scanned: by amavisd-new at noacks.org cc: Martin Blapp cc: freebsd-current@freebsd.org Subject: Re: Deadlocks with recent SMP current X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list Reply-To: noackjr@alumni.rice.edu List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 14 Aug 2004 22:35:17 -0000 On 08/13/04 15:13, Scott Long wrote: > Doug White wrote: >> On Fri, 13 Aug 2004, Martin Blapp wrote: >>> Since yesterday I'm getting complete deadlocks. This time >>> unrelated the servers are nor loaded at all, the just freeze >>> after a while. No break into DDB possible at all. >> >> Welcome to the club; I've been having them on my -curent builder >> since Aug 4. I'm going to set up a duplicate box and start >> binary-searching for the offending commit(s). >> >> Preemption is the default, disabled. >> > > My box is a dual-600MHz P3 with 1GB RAM and running kde. A make -j3 >> buildworld will lock it up 75% of the time. It'll survive a >> nonparallel build, and it'll survive a kernel build. >> >> Haven't tried WITNESS+INVARIANTS yet since it really dogs the >> machine. :) > > Can you try the patch below? It's really only a band-aid, but might > make things usable for now. Also, are more lockups being seen under > ULE or under 4BSD. There was a recent change to ULE (rev 1.120 of > sched_ule.c) that seems to have aggrivated the scheduler problems on > my test systems. > > Scott > > Index: kern_switch.c > =================================================================== > RCS file: /usr/ncvs/src/sys/kern/kern_switch.c,v > retrieving revision 1.78 > diff -u -r1.78 kern_switch.c > --- kern_switch.c 10 Aug 2004 00:26:25 -0000 1.78 > +++ kern_switch.c 13 Aug 2004 20:11:27 -0000 > @@ -345,6 +345,8 @@ > return; > } > > + critical_enter(); > + > tda = kg->kg_last_assigned; > if ((ke = td->td_kse) == NULL) { > if (kg->kg_idle_kses) { > @@ -441,6 +443,7 @@ > CTR3(KTR_RUNQ, "setrunqueue: held: td%p kg%p pid%d", > td, td->td_ksegrp, td->td_proc->p_pid); > } > + critical_exit(); > } > > /* Here's a data point: My dual Pentium3 system has been up for 20+ hours with this patch. Previously, it wouldn't survive for more than an hour or so (regardless of load). Jon