From owner-freebsd-acpi@FreeBSD.ORG Wed Mar 2 18:14:26 2005 Return-Path: Delivered-To: freebsd-acpi@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id D660816A4CF for ; Wed, 2 Mar 2005 18:14:26 +0000 (GMT) Received: from mail23.sea5.speakeasy.net (mail23.sea5.speakeasy.net [69.17.117.25]) by mx1.FreeBSD.org (Postfix) with ESMTP id 4E8E443D3F for ; Wed, 2 Mar 2005 18:14:26 +0000 (GMT) (envelope-from jhb@FreeBSD.org) Received: (qmail 30879 invoked from network); 2 Mar 2005 18:14:26 -0000 Received: from server.baldwin.cx ([216.27.160.63]) (envelope-sender )AES256-SHA encrypted SMTP for ; 2 Mar 2005 18:14:25 -0000 Received: from [10.50.40.202] (gw1.twc.weather.com [216.133.140.1]) (authenticated bits=0) by server.baldwin.cx (8.13.1/8.13.1) with ESMTP id j22IEJOA082705; Wed, 2 Mar 2005 13:14:20 -0500 (EST) (envelope-from jhb@FreeBSD.org) From: John Baldwin To: filippo.forti@fastwebnet.it Date: Wed, 2 Mar 2005 12:17:30 -0500 User-Agent: KMail/1.6.2 References: <20050301203005.GA684@portatile.fastwebnet.it> <200503011703.50828.jhb@FreeBSD.org> <20050302165304.GA674@portatile.fastwebnet.it> In-Reply-To: <20050302165304.GA674@portatile.fastwebnet.it> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200503021217.30157.jhb@FreeBSD.org> X-Spam-Status: No, score=-102.8 required=4.2 tests=ALL_TRUSTED, USER_IN_WHITELIST autolearn=failed version=3.0.2 X-Spam-Checker-Version: SpamAssassin 3.0.2 (2004-11-16) on server.baldwin.cx cc: freebsd-acpi@FreeBSD.org cc: freebsd-current@FreeBSD.org Subject: Re: Panic on suspend X-BeenThere: freebsd-acpi@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: ACPI and power management development List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 02 Mar 2005 18:14:27 -0000 On Wednesday 02 March 2005 11:53 am, Filippo Forti wrote: > On Tue, Mar 01, 2005 at 05:03:50PM -0500, John Baldwin wrote: > > On Tuesday 01 March 2005 03:30 pm, Filippo Forti wrote: > > > Hi, > > > I got a fully reproduceable panic while trying to suspend (to S3) on my > > > laptop. FreeBSD is -CURRENT from Monday. > > > > > > I'm using a modified DSDT which used to work before I updated on > > > Monday. dmesg from after reboot is attacched. > > > > > > Here comes gbd output > > > > > > > > > Fatal trap 12: page fault while in vm86 mode > > > fault virtual address = 0x2000 > > > fault code = user write, page not present > > > instruction pointer = 0xc000:0x5195 > > > stack pointer = 0x0:0xfe4 > > > frame pointer = 0x0:0x0 > > > code segment = base 0x600005, limit 0x2, type 0x11 > > > = DPL 1, pres 0, def32 0, gran 0 > > > processor eflag = interrupt enabled, resume, mv86, IOPL = 0 > > > current process = 1046 (acpiconf) > > > [thread pid 1046 tid 100084] > > > Stopped at 0x5159: *** error reading from address 5159 *** > > > > > > db> tr > > > Tracing pid 1046 tid 100084 td 0xc27645c0 > > > (null)(ff000e2c3,f000ff53,f000ff54,f00092da) at 0x5195 > > > _end(ccce4fab,b638f354,3a6c5da3,ec956de5,fe6dff6c) at 0xf000ff53 > > > > > > db> where > > > Tracing pid 1046 tid 100084 td 0xc27645c0 > > > kdb_enter(c08d00f2,c08e69ce,c08cbfd1,c08ee7f9,2b8) at kdb_enter+0x31 > > > witness_checkorder(c2cc2a54,9,c08ee7f9,2b8,0) at > > > witness_checkorder+0xc9 _mtx_lock_flags(c2cc2a54,0,c08ee7f9,2b8,0) at > > > _mtx_lock_flags+0x85 trap_pfault(c0c21fa8,0,2000,c0c21fa8,2000) at > > > trap_pfault+0xa1 trap (0,0,0,1000,0) at trap+0x34b > > > calltrap() at calltrap+0x5 > > > ---trap 0xc, eip = 0x5195, esp = 0xc0c21fe8, ebp = 0 --- > > > > > > db> next > > > panic: blockable sleep lock (sleep mutex) process lock @ > > > /usr/src/sys/i386/i386/trap.c:696 > > > KDB: enter: panic > > > After 2 instructions (0 loads, 0 stores), > > > [thread 1046 tid 1000084] > > > stopped at kdb_enter+0x31: ret > > > > > > Thanks for your help > > > Filippo > > > > Can you try this patch to get rid of the bogus witness warning: > > This patch causes the kernel to panic on boot. Here comes something from > there: > > Fatal trap 12: page fault while in kernel mode > fault address = 0xbfbfffff > fault code = supervisor write, page not present > instruction pointer = 0x8:0xc085055d > stack pointer = 0x10:0xe35a6cb8 > frame pointer = 0x10:0xe35a6d14 > code segment = base 0x0, limit 0xfffff, type 0x1b > = DPL 0, pres 1, def32 1, gran 1 > processor eflags = interrupt enabled, resume, IOPL = 0 > current process = 1 (swapper) > [thread pid 1 tid 100003] > Stopped at subyte+0x25: movb %al,0(%edx) > > db> where > Tracing pid 1 tid 100003 td 0xc227d450 > subyte(0,e35a6d48,c08ca09d,30e,0) at subyte+0x25 > fork_exit)c0634dac,0,e35a6d48) at fork_exit+0xc7 > fork_trampoline() at fork_trampoline+0x8 > --- trap 0x1, eip=0, esp=0xe35a6d7c, epb=0 --- Yes, the patch below is supposed to make it panic more cleanly rather than emitting a bogus witness warning. It won't fix the root panic. > > Index: trap.c > > =================================================================== > > RCS file: /usr/cvs/src/sys/i386/i386/trap.c,v > > retrieving revision 1.270 > > diff -u -r1.270 trap.c > > --- trap.c 16 Nov 2004 20:42:31 -0000 1.270 > > +++ trap.c 18 Feb 2005 15:31:37 -0000 > > @@ -238,7 +238,7 @@ > > * to the debugger. > > */ > > eva = rcr2(); > > - if (td->td_critnest == 0) > > + if (td->td_critnest == 0 && td->td_sleeplocks == NULL) > > enable_intr(); > > else > > trap_fatal(&frame, eva); > > > > > > -- > > John Baldwin <>< http://www.FreeBSD.org/~jhb/ > > "Power Users Use the Power to Serve" = http://www.FreeBSD.org > > P.S.: I worte the other messages in reply to my problem and will notice > you of the results as soon as I can test all of them. > > Thanks for your help > Filippo -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org