summaryrefslogtreecommitdiff
path: root/sys/vm/vm_page.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/vm/vm_page.c')
-rw-r--r--sys/vm/vm_page.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c
index d55530905f6a..a1f199c60970 100644
--- a/sys/vm/vm_page.c
+++ b/sys/vm/vm_page.c
@@ -843,7 +843,7 @@ loop:
if (req & VM_ALLOC_ZERO)
flags = PG_ZERO | PG_BUSY;
}
- if (req & VM_ALLOC_NOOBJ)
+ if (req & (VM_ALLOC_NOBUSY | VM_ALLOC_NOOBJ))
flags &= ~PG_BUSY;
m->flags = flags;
if (req & VM_ALLOC_WIRED) {
@@ -1420,7 +1420,8 @@ retrylookup:
} else {
if (allocflags & VM_ALLOC_WIRED)
vm_page_wire(m);
- vm_page_busy(m);
+ if ((allocflags & VM_ALLOC_NOBUSY) == 0)
+ vm_page_busy(m);
vm_page_unlock_queues();
return (m);
}