Date: Mon, 21 Jul 2003 14:51:54 -0700 (PDT) From: Nate Lawson <nate@root.org> To: Peter Wemm <peter@FreeBSD.org> Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/i386/acpica acpi_wakeup.c Message-ID: <20030721144902.R34834@root.org> In-Reply-To: <20030721205935.A843937B488@hub.freebsd.org> References: <20030721205935.A843937B488@hub.freebsd.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, 21 Jul 2003, Peter Wemm wrote: > Modified files: > sys/i386/acpica acpi_wakeup.c > Log: > Commit Ian Dowse's workaround for acpi resume resetting after the > LAZY_SWITCH changes. He pointed out the acpi code sets up an identity > mapping in the current vmspace and that got messed up by the %cr3 being > out of sync with the current page directory. As a workaround, restore > %cr3 across the sleep/resume. A more complete fix would be to undo the > lazy state and clear the pm_active bit from the borrowed pmap, but this > works and people are currently hurting. I'll clean this up. > This is mostly Ian's patch, plus a PAE tweak from me. Thank you for following up on this. As I asked on the Usenix conf. call, are there any other registers that are being missed in the save/restore? There are some other aging code in this wakeup code that may not fit with our changing register models. -Nate
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20030721144902.R34834>