From owner-freebsd-current@FreeBSD.ORG Wed May 23 14:44:53 2007 Return-Path: X-Original-To: freebsd-current@freebsd.org Delivered-To: freebsd-current@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [69.147.83.52]) by hub.freebsd.org (Postfix) with ESMTP id 041B116A41F for ; Wed, 23 May 2007 14:44:53 +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 CD09A13C457 for ; Wed, 23 May 2007 14:44:52 +0000 (UTC) (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 7892E470E8; Wed, 23 May 2007 10:44:52 -0400 (EDT) Date: Wed, 23 May 2007 10:44:52 -0400 (EDT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: David Wolfskill In-Reply-To: <20070522202914.GB64542@bunrab.catwhisker.org> Message-ID: <20070523103815.W28780@fledge.watson.org> References: <20070522134724.L28780@fledge.watson.org> <20070522202914.GB64542@bunrab.catwhisker.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: freebsd-current@freebsd.org, Goran Gajic Subject: Re: Kernel hanging after today cvsup at Timecounter "TSC 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: Wed, 23 May 2007 14:44:53 -0000 On Tue, 22 May 2007, David Wolfskill wrote: >> I saw an identical problem when I booted a kernel from yesterday with >> kernel modules from a week or so earlier, only mine froze before getting to >> the Timecounter line, rather, immediately after the vga0 line. Perhaps >> we're looking at an issue with mixing modules with a kernel from >> before/after the compiler upgrade? > > I'm about as certain as I can be that ssuch "module-mixing" did not cause > the hang that I saw on my laptop today, as I was able to successfully boot > from a kernel built (along with world, at the time) on 19 May (after the gcc > 4 import). > > In my case, the keyboard was unresponsive (e.g., didn't go into "scroll > lock" mode when I used the keyboard chord to request that), and the fan > started gaining speed pretty rapidly, so I elected to power-cycle the > machine aftter a few seconds of trying less disruptive means of getting its > attention. > > I believe the last message displayed had the word "probe" in it. I am > certain that the system hadn't tried to mount any file systems yet. > > Sorry I don't have more specifics handy. I did save the hanging kernel, of > course. Indeed, looks like I was on the wrong track -- with INVARIANTS enabled, I see something more sensible. Apologies for any typos, this is hand-transcribed: vga0: at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0 panic: corupt spinlock KDB: enter: panic [thread pid 0 tid 0 ] Stopped at kdb_enter+0x32: leave db> bt Tracing pid 0 tid 0 td 0xc0b36620 kdb_enter(...) at kdb_enter+0x32 panic(...) at panic+0xc5 statclock(...) at statclock+0x108 hardclock(...) at hardclock+0x37 clkintr(...) at clkintr+0xd2 intr_execute_handlers(...) at intr_execute_handlers+0xe5 atpic_handle_intr(...) at atpic_handle_intr+0xba Xatpic_intr0() at Xatpic_int0+0x21 --- interrupt, eip = 0xc099409b, esp=0xc1020cb7, ebp = 0xc1020cbc --- spinlock_exit(...) at spinlock_exit+0x2b _mtx_unlock_spin_flags(...) at _mtx_unlock_spin_flags+0xdc atpic_enable_source(...) at atpic_enable_source+0x86 intr_add_handler(...) at intr_add_handler+0xb3 cpu_initclockS(...) at cpu_initclocks+0x50 initclocks(...) at initclocks+0xb mi_startup(...) at mi_startup+0x96 begin() at begin+0x2c I've uploaded the actual stack trace with arguments as http://www.watson.org/~robert/freebsd/20070523-panic.png The arguments to atpic_handle_intr() and atpic_enable_source() suggest that the interrupt fires before the code is ready to handle it, or something along those lines. Robert N M Watson Computer Laboratory University of Cambridge