*
* This code is derived from software contributed to Berkeley by
* The Mach Operating System project at Carnegie-Mellon University.
*
* %sccs.include.redist.c%
*
*
* This code is derived from software contributed to Berkeley by
* The Mach Operating System project at Carnegie-Mellon University.
*
* %sccs.include.redist.c%
*
- if (!m->busy || m->active)
- panic("vm_pager_map_page: page active or not busy");
- if (m->pagerowned)
+ if ((m->flags & PG_BUSY) == 0)
+ panic("vm_pager_map_page: page not busy");
+ if (m->flags & PG_PAGEROWNED)
printf("vm_pager_map_page: page %x already in pager\n", m);
#endif
kva = kmem_alloc_wait(pager_map, PAGE_SIZE);
#ifdef DEBUG
printf("vm_pager_map_page: page %x already in pager\n", m);
#endif
kva = kmem_alloc_wait(pager_map, PAGE_SIZE);
#ifdef DEBUG
#endif
pmap_enter(vm_map_pmap(pager_map), kva, VM_PAGE_TO_PHYS(m),
VM_PROT_DEFAULT, TRUE);
#endif
pmap_enter(vm_map_pmap(pager_map), kva, VM_PAGE_TO_PHYS(m),
VM_PROT_DEFAULT, TRUE);
pmap_remove(vm_map_pmap(pager_map), kva, kva + PAGE_SIZE);
kmem_free_wakeup(pager_map, kva, PAGE_SIZE);
#ifdef DEBUG
pmap_remove(vm_map_pmap(pager_map), kva, kva + PAGE_SIZE);
kmem_free_wakeup(pager_map, kva, PAGE_SIZE);
#ifdef DEBUG
else
printf("vm_pager_unmap_page: page %x(%x/%x) not owned\n",
m, kva, VM_PAGE_TO_PHYS(m));
else
printf("vm_pager_unmap_page: page %x(%x/%x) not owned\n",
m, kva, VM_PAGE_TO_PHYS(m));