From owner-freebsd-current@FreeBSD.ORG Tue Feb 22 22:54:19 2005 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 7A9A316A4CE for ; Tue, 22 Feb 2005 22:54:19 +0000 (GMT) Received: from relay01.pair.com (relay01.pair.com [209.68.5.15]) by mx1.FreeBSD.org (Postfix) with SMTP id C3B8543D39 for ; Tue, 22 Feb 2005 22:54:18 +0000 (GMT) (envelope-from pho@holm.cc) Received: (qmail 84750 invoked from network); 22 Feb 2005 22:54:17 -0000 Received: from unknown (HELO peter.osted.lan) (unknown) by unknown with SMTP; 22 Feb 2005 22:54:17 -0000 X-pair-Authenticated: 80.161.118.233 Received: from peter.osted.lan (localhost.osted.lan [127.0.0.1]) by peter.osted.lan (8.13.1/8.13.1) with ESMTP id j1MMsGTJ079896; Tue, 22 Feb 2005 23:54:16 +0100 (CET) (envelope-from pho@peter.osted.lan) Received: (from pho@localhost) by peter.osted.lan (8.13.1/8.13.1/Submit) id j1MMsGWg079895; Tue, 22 Feb 2005 23:54:16 +0100 (CET) (envelope-from pho) Date: Tue, 22 Feb 2005 23:54:16 +0100 From: Peter Holm To: John Baldwin Message-ID: <20050222225416.GA79843@peter.osted.lan> References: <20050206134113.GA77071@peter.osted.lan> <200502081448.43759.jhb@FreeBSD.org> <20050208201437.GA46141@peter.osted.lan> <200502221552.37300.jhb@FreeBSD.org> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <200502221552.37300.jhb@FreeBSD.org> User-Agent: Mutt/1.4.2.1i cc: freebsd-current@FreeBSD.org Subject: Re: Deadlock with option FULL_PREEMPTION X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 22 Feb 2005 22:54:19 -0000 On Tue, Feb 22, 2005 at 03:52:37PM -0500, John Baldwin wrote: > On Tuesday 08 February 2005 03:14 pm, Peter Holm wrote: > > On Tue, Feb 08, 2005 at 02:48:43PM -0500, John Baldwin wrote: > > > On Tuesday 08 February 2005 02:08 pm, Peter Holm wrote: > > > > On Tue, Feb 08, 2005 at 01:17:40PM -0500, John Baldwin wrote: > > > > > On Sunday 06 February 2005 08:41 am, Peter Holm wrote: > > > > > > With GENERIC HEAD from Feb 5 09:19 UTC + FULL_PREEMPTION + > > > > > > mpsafe_vfs = 1 I ran into what appears to be the same deadlock > > > > > > twice. This is the first one: > > > > > > http://www.holm.cc/stress/log/cons114.html > > > > > > > > > > What is the deadlock exactly? > > > > > > > > top froze, console login froze after giving login name, but I > > > > could ping the box. > > > > > > So it could be livelock rather than deadlock if interrupt processing > > > still works (ping). > > > > > > > > It looks like lots of threads banging on fork() > > > > > and that they are all waiting on an exclusive lock of allproc_lock > > > > > while holding a shared lock of proctree_lock (except for the 1 thread > > > > > currently doing a fork that is on a run queue because it was > > > > > preempted by IRQ 0 which kicked off softclock). Can you get 'ps' > > > > > output? > > > > > > > > Yes: > > > > > > Well, kmail butchered this in my reply so I won't quote any of it, but it > > > does seem that the process everyone is waiting on is runnable. I'm not > > > sure if there's anything you can do to recover from the livelock, but the > > > livelock is holding up all the forks so you can't get a login process to > > > fork a shell, etc. (At least not quickly apparently). > > > > Oh, recovery is not an issue. I'm stress testing, but this > > problem does seem to prevent finding other kernel problems > > with FULL_PREEMPTION. I'll just go back to testing without this > > option. Thanx for looking at this. > > Can you try doing this but with machdep.cpu_idle_hlt set to off as per my > other posting to current@ several days ago? > OK, I'll try that asap. -- Peter Holm