diff options
author | Dale Rahn <drahn@cvs.openbsd.org> | 2007-04-27 18:45:01 +0000 |
---|---|---|
committer | Dale Rahn <drahn@cvs.openbsd.org> | 2007-04-27 18:45:01 +0000 |
commit | 6e27c05c633ed899380a441aa7105b0e7ee5e390 (patch) | |
tree | 8a7a655b8c04d1e67f84c05b3bcf3004e5415166 /sys/arch/arm | |
parent | 95f9e80cc362acc476f68125b00602e70ad0760e (diff) |
Enable interrupts during syscall processing. Need to verify if the
test actually has any value. ok miod@
Diffstat (limited to 'sys/arch/arm')
-rw-r--r-- | sys/arch/arm/arm/syscall.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/sys/arch/arm/arm/syscall.c b/sys/arch/arm/arm/syscall.c index f3a497f2abe..ec8c3ad7e35 100644 --- a/sys/arch/arm/arm/syscall.c +++ b/sys/arch/arm/arm/syscall.c @@ -1,4 +1,4 @@ -/* $OpenBSD: syscall.c,v 1.8 2006/12/27 17:49:26 drahn Exp $ */ +/* $OpenBSD: syscall.c,v 1.9 2007/04/27 18:45:00 drahn Exp $ */ /* $NetBSD: syscall.c,v 1.24 2003/11/14 19:03:17 scw Exp $ */ /*- @@ -118,6 +118,10 @@ swi_handler(trapframe_t *frame) uvmexp.syscalls++; + /* Re-enable interrupts if they were enabled previously */ + if (__predict_true((frame->tf_spsr & I32_bit) == 0)) + enable_interrupts(I32_bit); + p->p_addr->u_pcb.pcb_tf = frame; code = frame->tf_r12; |