From owner-freebsd-acpi@FreeBSD.ORG Thu Jan 7 15:29:06 2010 Return-Path: Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 026AB106576A for ; Thu, 7 Jan 2010 15:29:06 +0000 (UTC) (envelope-from jhb@freebsd.org) Received: from cyrus.watson.org (cyrus.watson.org [65.122.17.42]) by mx1.freebsd.org (Postfix) with ESMTP id C73288FC24 for ; Thu, 7 Jan 2010 15:29:05 +0000 (UTC) Received: from bigwig.baldwin.cx (66.111.2.69.static.nyinternet.net [66.111.2.69]) by cyrus.watson.org (Postfix) with ESMTPSA id 7956A46B49; Thu, 7 Jan 2010 10:29:05 -0500 (EST) Received: from jhbbsd.localnet (smtp.hudson-trading.com [209.249.190.9]) by bigwig.baldwin.cx (Postfix) with ESMTPA id 6B2B58A01F; Thu, 7 Jan 2010 10:29:04 -0500 (EST) From: John Baldwin To: Joerg Wunsch Date: Thu, 7 Jan 2010 09:44:51 -0500 User-Agent: KMail/1.12.1 (FreeBSD/7.2-CBSD-20091103; KDE/4.3.1; amd64; ; ) References: <20091230082556.GD1637@uriah.heep.sax.de> <20100106220905.GG1616@uriah.heep.sax.de> <20100107070433.GH1616@uriah.heep.sax.de> In-Reply-To: <20100107070433.GH1616@uriah.heep.sax.de> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201001070944.51985.jhb@freebsd.org> X-Greylist: Sender succeeded SMTP AUTH, not delayed by milter-greylist-4.0.1 (bigwig.baldwin.cx); Thu, 07 Jan 2010 10:29:04 -0500 (EST) X-Virus-Scanned: clamav-milter 0.95.1 at bigwig.baldwin.cx X-Virus-Status: Clean X-Spam-Status: No, score=-2.5 required=4.2 tests=AWL,BAYES_00 autolearn=ham version=3.2.5 X-Spam-Checker-Version: SpamAssassin 3.2.5 (2008-06-10) on bigwig.baldwin.cx Cc: freebsd-acpi@freebsd.org Subject: Re: FreeBSD 8.0 hangs on boot with ACPI enabled X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 07 Jan 2010 15:29:06 -0000 On Thursday 07 January 2010 2:04:33 am Joerg Wunsch wrote: > As Joerg Wunsch wrote: > > > I might try jumping from breakpoint to breakpoint, but I first have > > to sketch a kind of schedule about where to set DDB breakpoints. > > Alas, time to go to bed now here, so I have to do that by tomorrow. > > OK, I think we're getting closer on the "hangs on boot" issue (letting > the issue aside that ahc0 doesn't get the correct IO address space > assigned, I'm using the Tekram DC-895 sym0 controller by now). > > I managed it to set breakpoints to xpt_alloc(), and then to _sleep(). > > That's where they are reached: > > Waiting 5 seconds for SCSI devices to settle > [thread pid 0 tid 100000 ] > Breakpoint at _sleep: pushl %ebp > db> c > [thread pid 2 tid 100007 ] > Breakpoint at _sleep: pushl %ebp > db> c > [thread pid 3 tid 100008 ] > Breakpoint at _sleep: pushl %ebp > db> c > [thread pid 4 tid 100009 ] > Breakpoint at _sleep: pushl %ebp > db> c > [thread pid 13 tid 100011 ] > Breakpoint at _sleep: pushl %ebp > db> c > [thread pid 5 tid 100020 ] > Breakpoint at _sleep: pushl %ebp > db> c > [thread pid 14 tid 100025 ] > Breakpoint at _sleep: pushl %ebp > db> trace > Tracing pid 14 tid 100025 td 0xc2c61b40 > _sleep(0,c2b69d38,0,0,0,...) at _sleep > fork_exit(c04bf050,0,c2b69d38) at fork_exit+0x90 > fork_trampoline() at fork_trampoline+0x8 > --- trap 0, eip = 0, esp = 0xc2b69d70, ebp = 0 --- > > If I continue there, it just sits there, and hangs. No DDB break, no > nothing. I tried setting a breakpoint to fork_exit+0x90 (which would > be the next instruction after the _sleep), which is never reached. fork_exit+0x90 never gets executed unless a kthread returns from its main routine. You can try disabling ACPI's thermal support (debug.acpi.disabled=thermal I think) to see if that helps. You could also start adding breakpoints to the main kthread routine for the acpi_thermal thread (and/or acpi_cooling). It may also be useful for you to change mi_switch() to print out the name of each new thread that runs after returning from sched_switch(). -- John Baldwin