summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorpatrick <patrick@openbsd.org>2018-03-29 19:25:39 +0000
committerpatrick <patrick@openbsd.org>2018-03-29 19:25:39 +0000
commitea8403b20e23656c58975c817def51a72a3bc58d (patch)
treee3ea94144866e95a920adae8180d464ed3706a63
parentEnable mvclock(4), mvicu(4), mvpinctrl(4), mvgpio(4) and mvrtc(4). This (diff)
downloadwireguard-openbsd-ea8403b20e23656c58975c817def51a72a3bc58d.tar.xz
wireguard-openbsd-ea8403b20e23656c58975c817def51a72a3bc58d.zip
Set p->p_cpu in cpu_switchto() like we do on other MP architectures.
ok kettenis@
-rw-r--r--sys/arch/arm64/arm64/cpuswitch.S3
-rw-r--r--sys/arch/arm64/arm64/genassym.cf3
2 files changed, 4 insertions, 2 deletions
diff --git a/sys/arch/arm64/arm64/cpuswitch.S b/sys/arch/arm64/arm64/cpuswitch.S
index 06cc3a9a842..4cdda217f4c 100644
--- a/sys/arch/arm64/arm64/cpuswitch.S
+++ b/sys/arch/arm64/arm64/cpuswitch.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: cpuswitch.S,v 1.2 2017/03/24 19:48:01 kettenis Exp $ */
+/* $OpenBSD: cpuswitch.S,v 1.3 2018/03/29 19:25:39 patrick Exp $ */
/*
* Copyright (c) 2015 Dale Rahn <drahn@dalerahn.com>
*
@@ -63,6 +63,7 @@ ENTRY(cpu_switchto)
mrs x2, tpidr_el1 // load curcpu
mov w5, #SONPROC
strb w5, [x1, #(P_STAT) ] // Mark new on cpu
+ str x2, [x1, #(P_CPU)]
ldr x5, [x1, #(P_ADDR) ] // load new pcb
str x5, [x2, #(CI_CURPCB)]
str x1, [x2, #(CI_CURPROC)]
diff --git a/sys/arch/arm64/arm64/genassym.cf b/sys/arch/arm64/arm64/genassym.cf
index df96bca5642..5a5c084a539 100644
--- a/sys/arch/arm64/arm64/genassym.cf
+++ b/sys/arch/arm64/arm64/genassym.cf
@@ -1,4 +1,4 @@
-# $OpenBSD: genassym.cf,v 1.5 2018/01/28 13:17:45 kettenis Exp $
+# $OpenBSD: genassym.cf,v 1.6 2018/03/29 19:25:39 patrick Exp $
# $NetBSD: genassym.cf,v 1.27 2003/11/04 10:33:16 dsl Exp$
# Copyright (c) 1982, 1990 The Regents of the University of California.
@@ -63,6 +63,7 @@ endif
struct proc
member p_addr
+member p_cpu
member p_stat
member P_ASTPENDING p_md.md_astpending