summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorkettenis <kettenis@openbsd.org>2020-07-06 07:26:40 +0000
committerkettenis <kettenis@openbsd.org>2020-07-06 07:26:40 +0000
commit2a28964cdc23f2802fa8c1d042b51ee6b1e77f1c (patch)
tree9befe6727f55ed3e229d2a0b55fcb4749d9587da
parentadd kstat(8), the userland side of kstat(4). (diff)
downloadwireguard-openbsd-2a28964cdc23f2802fa8c1d042b51ee6b1e77f1c.tar.xz
wireguard-openbsd-2a28964cdc23f2802fa8c1d042b51ee6b1e77f1c.zip
Fix pmap_pted_ro() such that it actually takes away PROT_EXEC when asked to
do so.
-rw-r--r--sys/arch/powerpc64/powerpc64/pmap.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/sys/arch/powerpc64/powerpc64/pmap.c b/sys/arch/powerpc64/powerpc64/pmap.c
index b10c1f15cbc..18bd36d188f 100644
--- a/sys/arch/powerpc64/powerpc64/pmap.c
+++ b/sys/arch/powerpc64/powerpc64/pmap.c
@@ -1,4 +1,4 @@
-/* $OpenBSD: pmap.c,v 1.26 2020/07/02 21:51:05 kettenis Exp $ */
+/* $OpenBSD: pmap.c,v 1.27 2020/07/06 07:26:40 kettenis Exp $ */
/*
* Copyright (c) 2015 Martin Pieuchot
@@ -1144,8 +1144,7 @@ pmap_pted_ro(struct pte_desc *pted, vm_prot_t prot)
}
/* Add a Page Table Entry, section 5.10.1.1. */
- pte->pte_lo &= ~(PTE_CHG|PTE_PP);
- pte->pte_lo |= PTE_RO;
+ pte->pte_lo = pted->pted_pte.pte_lo;
eieio(); /* Order 1st PTE update before 2nd. */
pte->pte_hi |= PTE_VALID;
ptesync(); /* Ensure updates completed. */