diff options
Diffstat (limited to 'sys/vm/vm_page.c')
-rw-r--r-- | sys/vm/vm_page.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/sys/vm/vm_page.c b/sys/vm/vm_page.c index 0c971c5..c191d60 100644 --- a/sys/vm/vm_page.c +++ b/sys/vm/vm_page.c @@ -1472,12 +1472,13 @@ retrylookup: return (NULL); goto retrylookup; } else { - vm_page_lock_queues(); - if (allocflags & VM_ALLOC_WIRED) + if ((allocflags & VM_ALLOC_WIRED) != 0) { + vm_page_lock_queues(); vm_page_wire(m); + vm_page_unlock_queues(); + } if ((allocflags & VM_ALLOC_NOBUSY) == 0) vm_page_busy(m); - vm_page_unlock_queues(); return (m); } } |