diff options
author | Patrick Wildt <patrick@cvs.openbsd.org> | 2013-05-10 10:18:47 +0000 |
---|---|---|
committer | Patrick Wildt <patrick@cvs.openbsd.org> | 2013-05-10 10:18:47 +0000 |
commit | 0ed143ed761e07a1408b0ade1dcce4e829d79036 (patch) | |
tree | 36dab8b857369a1357618a4afec4950190af9d2a /sys/arch/arm | |
parent | 10ede77d5f798d66ee1de98dfdc2fb6c338b0581 (diff) |
Map vector page executable when installing the fiq handler.
ok miod@
Diffstat (limited to 'sys/arch/arm')
-rw-r--r-- | sys/arch/arm/arm/fiq.c | 6 |
1 files changed, 3 insertions, 3 deletions
diff --git a/sys/arch/arm/arm/fiq.c b/sys/arch/arm/arm/fiq.c index 60bb686d35d..10c1a82f273 100644 --- a/sys/arch/arm/arm/fiq.c +++ b/sys/arch/arm/arm/fiq.c @@ -1,4 +1,4 @@ -/* $OpenBSD: fiq.c,v 1.3 2012/12/05 23:20:11 deraadt Exp $ */ +/* $OpenBSD: fiq.c,v 1.4 2013/05/10 10:18:46 patrick Exp $ */ /* $NetBSD: fiq.c,v 1.5 2002/04/03 23:33:27 thorpej Exp $ */ /* @@ -67,13 +67,13 @@ static void fiq_installhandler(void *func, size_t size) { #if !defined(__ARM_FIQ_INDIRECT) - vector_page_setprot(VM_PROT_READ|VM_PROT_WRITE); + vector_page_setprot(VM_PROT_READ|VM_PROT_WRITE|VM_PROT_EXECUTE); #endif memcpy(fiqvector, func, size); #if !defined(__ARM_FIQ_INDIRECT) - vector_page_setprot(VM_PROT_READ); + vector_page_setprot(VM_PROT_READ|VM_PROT_EXECUTE); #endif cpu_icache_sync_range((vaddr_t) fiqvector, size); } |