summaryrefslogtreecommitdiff
path: root/sys/arch/mips64
diff options
context:
space:
mode:
authorMiod Vallat <miod@cvs.openbsd.org>2007-07-01 19:12:43 +0000
committerMiod Vallat <miod@cvs.openbsd.org>2007-07-01 19:12:43 +0000
commitb5c5ac60b27e4cff9f7ec7c9b3d9214f1560ce3b (patch)
tree6bddbfca0c4ecd61afac70b85b81a6376ae2cf72 /sys/arch/mips64
parentcae0fcf514e4dd790743cbe38f6ef0c3a96c7c22 (diff)
In cpu_switch(), store the saved cpl in the pcb as a 64 bit store, so that
the high order bits are not undefined when invoking hw_setintrmask() on return.
Diffstat (limited to 'sys/arch/mips64')
-rw-r--r--sys/arch/mips64/mips64/context.S4
1 files changed, 2 insertions, 2 deletions
diff --git a/sys/arch/mips64/mips64/context.S b/sys/arch/mips64/mips64/context.S
index 4f1b91d5c3e..bb1828f1bfc 100644
--- a/sys/arch/mips64/mips64/context.S
+++ b/sys/arch/mips64/mips64/context.S
@@ -1,4 +1,4 @@
-/* $OpenBSD: context.S,v 1.11 2007/05/09 19:19:26 miod Exp $ */
+/* $OpenBSD: context.S,v 1.12 2007/07/01 19:12:42 miod Exp $ */
/*
* Copyright (c) 2002-2003 Opsycon AB (www.opsycon.se / www.opsycon.com)
@@ -236,7 +236,7 @@ NON_LEAF(cpu_switch, FRAMESZ(CF_SZ), ra)
REG_S ra, CF_RA_OFFS(sp)
.mask 0x80000000, (CF_RA_OFFS - FRAMESZ(CF_SZ))
lw t0, cpl
- sw t0, PCB_CONTEXT+13*REGSZ(t3)
+ REG_S t0, PCB_CONTEXT+13*REGSZ(t3)
# lw t2, cnt+V_SWTCH # for statistics
REG_S s0, PCB_CONTEXT+0*REGSZ(t3) # do a 'savectx()'
REG_S s1, PCB_CONTEXT+1*REGSZ(t3)