Re-apply r233122 erronously reverted in r233168.

Submitted by:	 jhb
Pointy hat to:	 kib
MFC after: 2 weeks
This commit is contained in:
Konstantin Belousov 2012-03-19 15:50:14 +00:00
parent b850e3b883
commit 5f3351fec3
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=233185

View file

@ -2942,8 +2942,7 @@ pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot)
pdp_entry_t *pdpe;
pd_entry_t ptpaddr, *pde;
pt_entry_t *pte;
int anychanged;
boolean_t pv_lists_locked;
boolean_t anychanged, pv_lists_locked;
if ((prot & VM_PROT_READ) == VM_PROT_NONE) {
pmap_remove(pmap, sva, eva);
@ -2956,7 +2955,7 @@ pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot)
pv_lists_locked = FALSE;
resume:
anychanged = 0;
anychanged = FALSE;
PMAP_LOCK(pmap);
for (; sva < eva; sva = va_next) {
@ -3004,7 +3003,7 @@ pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot)
* invalidated by pmap_protect_pde().
*/
if (pmap_protect_pde(pmap, pde, sva, prot))
anychanged = 1;
anychanged = TRUE;
continue;
} else {
if (!pv_lists_locked) {
@ -3058,7 +3057,7 @@ pmap_protect(pmap_t pmap, vm_offset_t sva, vm_offset_t eva, vm_prot_t prot)
if (obits & PG_G)
pmap_invalidate_page(pmap, sva);
else
anychanged = 1;
anychanged = TRUE;
}
}
}