Allow valid pages to be mapped for read access when they have a non-zero

busy count.  Only mappings that allow write access should be prevented by
a non-zero busy count.

(The prohibition on mapping pages for read access when they have a non-
zero busy count originated in revision 1.202 of i386/i386/pmap.c when
this code was a part of the pmap.)

Reviewed by:	tegge
This commit is contained in:
Alan Cox 2009-04-19 00:34:34 +00:00
parent 34b07340ff
commit f9855e177d
2 changed files with 1 additions and 3 deletions

View File

@ -1027,7 +1027,6 @@ vm_fault_prefault(pmap_t pmap, vm_offset_t addra, vm_map_entry_t entry)
break;
}
if (((m->valid & VM_PAGE_BITS_ALL) == VM_PAGE_BITS_ALL) &&
(m->busy == 0) &&
(m->flags & PG_FICTITIOUS) == 0) {
vm_page_lock_queues();

View File

@ -1683,8 +1683,7 @@ vm_map_pmap_enter(vm_map_t map, vm_offset_t addr, vm_prot_t prot,
psize = tmpidx;
break;
}
if ((p->valid & VM_PAGE_BITS_ALL) == VM_PAGE_BITS_ALL &&
(p->busy == 0)) {
if ((p->valid & VM_PAGE_BITS_ALL) == VM_PAGE_BITS_ALL) {
if (p_start == NULL) {
start = addr + ptoa(tmpidx);
p_start = p;