cvs commit: src/sys/i386/acpica acpi_wakeup.c

Nate Lawson nate at root.org
Mon Jul 21 14:51:55 PDT 2003


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


More information about the cvs-all mailing list