In pmap_protect(), don't call vm_page_dirty() if the page is unmanaged.

This commit is contained in:
Marcel Moolenaar 2011-07-15 02:11:26 +00:00
parent d99dc333db
commit 17d3cc91e0

View File

@ -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;