aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorAlan Cox <alc@FreeBSD.org>2006-08-06 06:29:16 +0000
committerAlan Cox <alc@FreeBSD.org>2006-08-06 06:29:16 +0000
commit14aaab53296ed6f07a8faa2e38f4b73774531697 (patch)
treef7efc590ffbb1b3294191597e39d3fea1047096d /sys
parent7c4b7ecc4c3e45099205f75eb99ca536633ae4e0 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/amd64/amd64/pmap.c3
-rw-r--r--sys/i386/i386/pmap.c3
2 files changed, 2 insertions, 4 deletions
diff --git a/sys/amd64/amd64/pmap.c b/sys/amd64/amd64/pmap.c
index 1747d0b9e404..5ceb49751154 100644
--- a/sys/amd64/amd64/pmap.c
+++ b/sys/amd64/amd64/pmap.c
@@ -2506,7 +2506,6 @@ pmap_object_init_pt(pmap_t pmap, vm_offset_t addr,
retry:
p = vm_page_lookup(object, pindex);
if (p != NULL) {
- vm_page_lock_queues();
if (vm_page_sleep_if_busy(p, FALSE, "init4p"))
goto retry;
} else {
@@ -2525,8 +2524,8 @@ retry:
p = vm_page_lookup(object, pindex);
vm_page_lock_queues();
vm_page_wakeup(p);
+ vm_page_unlock_queues();
}
- vm_page_unlock_queues();
ptepa = VM_PAGE_TO_PHYS(p);
if (ptepa & (NBPDR - 1))
diff --git a/sys/i386/i386/pmap.c b/sys/i386/i386/pmap.c
index bd32e5464867..111b4f771c3e 100644
--- a/sys/i386/i386/pmap.c
+++ b/sys/i386/i386/pmap.c
@@ -2581,7 +2581,6 @@ pmap_object_init_pt(pmap_t pmap, vm_offset_t addr,
retry:
p = vm_page_lookup(object, pindex);
if (p != NULL) {
- vm_page_lock_queues();
if (vm_page_sleep_if_busy(p, FALSE, "init4p"))
goto retry;
} else {
@@ -2600,8 +2599,8 @@ retry:
p = vm_page_lookup(object, pindex);
vm_page_lock_queues();
vm_page_wakeup(p);
+ vm_page_unlock_queues();
}
- vm_page_unlock_queues();
ptepa = VM_PAGE_TO_PHYS(p);
if (ptepa & (NBPDR - 1))