From owner-freebsd-current@FreeBSD.ORG Mon Nov 26 18:55:22 2007 Return-Path: Delivered-To: freebsd-current@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 71C0816A46B; Mon, 26 Nov 2007 18:55:22 +0000 (UTC) (envelope-from cristi@net.utcluj.ro) Received: from bavaria.utcluj.ro (unknown [IPv6:2001:b30:5000:2:20e:cff:fe4b:ca01]) by mx1.freebsd.org (Postfix) with ESMTP id A967113C459; Mon, 26 Nov 2007 18:55:21 +0000 (UTC) (envelope-from cristi@net.utcluj.ro) Received: from localhost (localhost [127.0.0.1]) by bavaria.utcluj.ro (Postfix) with ESMTP id 6516550853; Mon, 26 Nov 2007 20:55:20 +0200 (EET) X-Virus-Scanned: by the daemon playing with your mail on local.mail.utcluj.ro Received: from bavaria.utcluj.ro ([127.0.0.1]) by localhost (bavaria.utcluj.ro [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id u8clB2ZZk6y7; Mon, 26 Nov 2007 20:55:13 +0200 (EET) Received: from [172.27.2.200] (c7.campus.utcluj.ro [193.226.6.226]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by bavaria.utcluj.ro (Postfix) with ESMTP id 664A55087A; Mon, 26 Nov 2007 20:55:13 +0200 (EET) Message-ID: <474B168F.4020706@net.utcluj.ro> Date: Mon, 26 Nov 2007 20:55:11 +0200 From: Cristian KLEIN User-Agent: Thunderbird 2.0.0.6 (X11/20071022) MIME-Version: 1.0 To: Robert Watson References: <473AD98A.8050003@gmail.com> <20071114115254.GA55351@eos.sc1.parodius.com> <473AEED9.6070301@gmail.com> <200711161618.40441.jkim@FreeBSD.org> <474AE170.7020309@net.utcluj.ro> <20071126154611.W65286@fledge.watson.org> In-Reply-To: <20071126154611.W65286@fledge.watson.org> X-Enigmail-Version: 0.95.5 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit Cc: Andrey , freebsd-current@FreeBSD.org, Jung-uk Kim Subject: Re: RELENG_7 and HEAD: bge causes system hang X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.5 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: Mon, 26 Nov 2007 18:55:22 -0000 Robert Watson wrote: > > On Mon, 26 Nov 2007, Cristian KLEIN wrote: > >> Great to hear this problem was solved. I still have one big fat >> question. Why did the system hang and not allow the kernel debugger >> show up? I strongly believe that this bug would have been easily >> spotted suppose KDB would have responded. Is it perhaps possible to >> "harden" KDB, so that such issues are easier to find and fix in future? > > I don't know the details of this particular situation, but I can speak > to at least one known issue in DDB: right now, getting into DDB from a > serial console is a very quick and straight forward path, requiring only > the delivery of the serial interrupt and execution of its fast handler. > The regular video console keypresses take a much more circuitous route, > as syscons isn't MPSAFE, so include the scheduling of an ithread and > acquisition of Giant. As such, I've found breaking into the debugger > much easier from a serial console for several years. As Giant has been > pushed off larger and larger parts of the kernel, the syscons break path > has gotten a lot more reliable. That is very unfortunate. Newer laptops don't come with a serial port anymore. As far as I know, using USB-to-serial converters won't work. > There will always be certain cases > where a console break (serial or video) will not work, and those include > cases where interrupts are disabled on all CPUs (such as if spinlocks > are held on all CPUs, perhaps due to one being leaked and then a > cascading deadline). In that situation, there's nothing like a nice NMI > button or IPMI NMI to get into the debugger :-). IIRC, spinlocks are not an issue anymore. The kernel will throw a message like "spinlock held too long in file, line", and the issue can easily be spotted. Is there any way to forcibly enter the DDB on a serialless laptop, so future problems like this will be spotted faster? Perhaps, should MPSAFEing syscons get more attention?