summaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorMike Larkin <mlarkin@cvs.openbsd.org>2013-11-02 00:42:17 +0000
committerMike Larkin <mlarkin@cvs.openbsd.org>2013-11-02 00:42:17 +0000
commit0ae079a34a6695d3f07bfa5d21804bc041e38410 (patch)
tree906279c8f8d9214f0d239ba63f4170fb0c69edc8 /sys
parent6a8bdc7f091b0271d2aa8c81061f8aee70a6439a (diff)
Some more aggressive CR3 whacking is needed on some machines to completely
flush the inflate page TLB entry.
Diffstat (limited to 'sys')
-rw-r--r--sys/arch/amd64/amd64/acpi_wakecode.S5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/arch/amd64/amd64/acpi_wakecode.S b/sys/arch/amd64/amd64/acpi_wakecode.S
index 5df41e82c22..63f28968e45 100644
--- a/sys/arch/amd64/amd64/acpi_wakecode.S
+++ b/sys/arch/amd64/amd64/acpi_wakecode.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: acpi_wakecode.S,v 1.20 2013/10/18 15:07:58 mlarkin Exp $ */
+/* $OpenBSD: acpi_wakecode.S,v 1.21 2013/11/02 00:42:16 mlarkin Exp $ */
/*
* Copyright (c) 2001 Takanori Watanabe <takawata@jp.freebsd.org>
* Copyright (c) 2001 Mitsuru IWASAKI <iwasaki@jp.freebsd.org>
@@ -494,7 +494,8 @@ NENTRY(hibernate_switch_stack_machdep)
ret
NENTRY(hibernate_flush)
- invlpg HIBERNATE_INFLATE_PAGE
+ movq $HIBERNATE_PML4T, %rax
+ movq %rax, %cr3
ret
#endif /* HIBERNATE */