From owner-cvs-src@FreeBSD.ORG Tue Jul 15 17:15:31 2003 Return-Path: Delivered-To: cvs-src@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 4DA7137B401; Tue, 15 Jul 2003 17:15:31 -0700 (PDT) Received: from canning.wemm.org (canning.wemm.org [192.203.228.65]) by mx1.FreeBSD.org (Postfix) with ESMTP id B512943FAF; Tue, 15 Jul 2003 17:15:30 -0700 (PDT) (envelope-from peter@wemm.org) Received: from wemm.org (localhost [127.0.0.1]) by canning.wemm.org (Postfix) with ESMTP id 58C752A8B2; Tue, 15 Jul 2003 17:15:30 -0700 (PDT) (envelope-from peter@wemm.org) X-Mailer: exmh version 2.5 07/13/2001 with nmh-1.0.4 To: Andrea Campi In-Reply-To: <20030715142508.GA1278@webcom.it> Date: Tue, 15 Jul 2003 17:15:30 -0700 From: Peter Wemm Message-Id: <20030716001530.58C752A8B2@canning.wemm.org> cc: cvs-src@FreeBSD.org cc: src-committers@FreeBSD.org cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/conf options.i386 options.pc98 src/sys/i386/i386 mp_machdep.c pmap.c swtch.s src/sys/i386/isa apic_vector.s src/sys/kern kern_synch.c subr_witness.c X-BeenThere: cvs-src@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: CVS commit messages for the src tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Jul 2003 00:15:31 -0000 Andrea Campi wrote: > On Wed, Jul 09, 2003 at 06:03:00PM -0700, Peter Wemm wrote: > > peter 2003/07/09 18:03:00 PDT > > > > FreeBSD src repository > > > > Modified files: > > sys/conf options.i386 options.pc98 > > sys/i386/i386 mp_machdep.c pmap.c swtch.s > > sys/i386/isa apic_vector.s > > sys/kern kern_synch.c subr_witness.c > > Log: > > unifdef -DLAZY_SWITCH and start to tidy up the associated glue. > > After this commit my laptop reboots after wakup from S4 (sleep to disk). > I looked at the delta but couldn't quickly figure out whether it's possible > to revert it only in part. I'll try to do it later tonight at home, but > if in the meantime anybody has any good debugging idea, I'm all ears. To get you out of a jam, you can try this (beware, xterm cut/paste tab spammage, but it should point you where to disable the test): RCS file: /home/ncvs/src/sys/i386/i386/swtch.s,v retrieving revision 1.142 diff -u -r1.142 swtch.s --- swtch.s 10 Jul 2003 01:02:59 -0000 1.142 +++ swtch.s 16 Jul 2003 00:08:10 -0000 @@ -161,12 +161,14 @@ /* switch address space */ movl PCB_CR3(%edx),%eax +#if 0 #ifdef PAE cmpl %eax,IdlePDPT /* Kernel address space? */ #else cmpl %eax,IdlePTD /* Kernel address space? */ #endif je sw1 +#endif movl %cr3,%ebx /* The same address space? */ cmpl %ebx,%eax je sw1 However, There has also been an ACPI update. I wonder if that might be the cause instead? As a shot in the dark, you might like to try something like this too: RCS file: /home/ncvs/src/sys/i386/acpica/acpi_wakeup.c,v retrieving revision 1.21 diff -u -r1.21 acpi_wakeup.c --- acpi_wakeup.c 1 Jul 2003 15:52:03 -0000 1.21 +++ acpi_wakeup.c 16 Jul 2003 00:14:21 -0000 @@ -296,6 +296,8 @@ pm->pm_pteobj = NULL; } + load_cr3(rcr3()); + write_eflags(ef); return (ret); No, I haven't tested it. It really is a wild guess. Cheers, -Peter -- Peter Wemm - peter@wemm.org; peter@FreeBSD.org; peter@yahoo-inc.com "All of this is for nothing if we don't go to the stars" - JMS/B5