summaryrefslogtreecommitdiff
path: root/sys/arm
diff options
context:
space:
mode:
authorMarcel Moolenaar <marcel@FreeBSD.org>2011-07-15 02:11:26 +0000
committerMarcel Moolenaar <marcel@FreeBSD.org>2011-07-15 02:11:26 +0000
commit17d3cc91e0c266341a2779bcebcd8922babbd6a3 (patch)
tree3a0521e56cf0518d342c3ee03ff28e6e567d30c5 /sys/arm
parentd99dc333dbc860ebc8eb9d8f1211211d5e2d8559 (diff)
Notes
Diffstat (limited to 'sys/arm')
-rw-r--r--sys/arm/arm/pmap.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/sys/arm/arm/pmap.c b/sys/arm/arm/pmap.c
index f68440200c52..d24a4229611a 100644
--- a/sys/arm/arm/pmap.c
+++ b/sys/arm/arm/pmap.c
@@ -3242,9 +3242,12 @@ pmap_protect(pmap_t pm, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot)
PTE_SYNC(ptep);
if (pg != NULL) {
- f = pmap_modify_pv(pg, pm, sva,
- PVF_WRITE, 0);
- vm_page_dirty(pg);
+ if (!(pg->flags & PG_UNMANAGED)) {
+ f = pmap_modify_pv(pg, pm, sva,
+ PVF_WRITE, 0);
+ vm_page_dirty(pg);
+ } else
+ f = 0;
} else
f = PVF_REF | PVF_EXEC;