SCCS-vsn: sys/hp300/hp300/pmap.c 7.16
*
* %sccs.include.redist.c%
*
*
* %sccs.include.redist.c%
*
- * @(#)pmap.c 7.15 (Berkeley) %G%
+ * @(#)pmap.c 7.16 (Berkeley) %G%
* is a valid mapping in the page.
*/
if (pmap != kernel_pmap)
* is a valid mapping in the page.
*/
if (pmap != kernel_pmap)
- vm_map_pageable(pt_map, trunc_page(pte),
- round_page(pte+1), FALSE);
+ (void) vm_map_pageable(pt_map, trunc_page(pte),
+ round_page(pte+1), FALSE);
/*
* Enter on the PV list if part of our managed memory
/*
* Enter on the PV list if part of our managed memory
* PT page.
*/
if (pmap != kernel_pmap) {
* PT page.
*/
if (pmap != kernel_pmap) {
- vm_map_pageable(pt_map, trunc_page(pte),
- round_page(pte+1), TRUE);
+ (void) vm_map_pageable(pt_map, trunc_page(pte),
+ round_page(pte+1), TRUE);
#ifdef DEBUG
if (pmapdebug & PDB_WIRING)
pmap_check_wiring("remove", trunc_page(pte));
#ifdef DEBUG
if (pmapdebug & PDB_WIRING)
pmap_check_wiring("remove", trunc_page(pte));
#ifdef DEBUG
if (pmapdebug & (PDB_ENTER|PDB_PTPAGE))
printf("enter: about to fault UPT pg at %x\n", va);
#ifdef DEBUG
if (pmapdebug & (PDB_ENTER|PDB_PTPAGE))
printf("enter: about to fault UPT pg at %x\n", va);
s = vm_fault(pt_map, va, VM_PROT_READ|VM_PROT_WRITE, FALSE);
if (s != KERN_SUCCESS) {
printf("vm_fault(pt_map, %x, RW, 0) -> %d\n", va, s);
panic("pmap_enter: vm_fault failed");
}
s = vm_fault(pt_map, va, VM_PROT_READ|VM_PROT_WRITE, FALSE);
if (s != KERN_SUCCESS) {
printf("vm_fault(pt_map, %x, RW, 0) -> %d\n", va, s);
panic("pmap_enter: vm_fault failed");
}
-#else
- if (vm_fault(pt_map, va, VM_PROT_READ|VM_PROT_WRITE, FALSE)
- != KERN_SUCCESS)
- panic("pmap_enter: vm_fault failed");
-#endif
ptpa = pmap_extract(kernel_pmap, va);
ptpa = pmap_extract(kernel_pmap, va);
+ /*
+ * Mark the page clean now to avoid its pageout (and
+ * hence creation of a pager) between now and when it
+ * is wired; i.e. while it is on a paging queue.
+ */
+ PHYS_TO_VM_PAGE(ptpa)->flags |= PG_CLEAN;
#ifdef DEBUG
PHYS_TO_VM_PAGE(ptpa)->flags |= PG_PTPAGE;
#endif
#ifdef DEBUG
PHYS_TO_VM_PAGE(ptpa)->flags |= PG_PTPAGE;
#endif