summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormlarkin <mlarkin@openbsd.org>2014-07-10 11:56:56 +0000
committermlarkin <mlarkin@openbsd.org>2014-07-10 11:56:56 +0000
commitbe4da86b286eb84c114ac3a30b0f29653c3c10ff (patch)
tree704dc562aa872a221968a01c1feb7a3f1a88f969
parentAdd support to test handling of repeated headers. (diff)
downloadwireguard-openbsd-be4da86b286eb84c114ac3a30b0f29653c3c10ff.tar.xz
wireguard-openbsd-be4da86b286eb84c114ac3a30b0f29653c3c10ff.zip
Clear CPUF_PARK flag to avoid re-parking on resume.
-rw-r--r--sys/arch/amd64/amd64/cpu.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/sys/arch/amd64/amd64/cpu.c b/sys/arch/amd64/amd64/cpu.c
index 67d2ce144f4..f3b04114f0f 100644
--- a/sys/arch/amd64/amd64/cpu.c
+++ b/sys/arch/amd64/amd64/cpu.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: cpu.c,v 1.63 2014/07/09 16:18:03 mlarkin Exp $ */
+/* $OpenBSD: cpu.c,v 1.64 2014/07/10 11:56:56 mlarkin Exp $ */
/* $NetBSD: cpu.c,v 1.1 2003/04/26 18:39:26 fvdl Exp $ */
/*-
@@ -721,8 +721,10 @@ cpu_hatch(void *v)
while ((ci->ci_flags & CPUF_GO) == 0)
delay(10);
#ifdef HIBERNATE
- if ((ci->ci_flags & CPUF_PARK) != 0)
+ if ((ci->ci_flags & CPUF_PARK) != 0) {
+ atomic_clearbits_int(&ci->ci_flags, CPUF_PARK);
hibernate_drop_to_real_mode();
+ }
#endif /* HIBERNATE */
#ifdef DEBUG