diff options
author | alc <alc@FreeBSD.org> | 2006-10-23 05:27:31 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2006-10-23 05:27:31 +0000 |
commit | f395a2d02c323a280083ffe5ec6a052fc677a05a (patch) | |
tree | ef9c8bfa271c7c27431c20447a1187718f17fbb9 /sys/vm | |
parent | d95f4fb5ef094a3b930eead8b2609574837257a3 (diff) | |
download | FreeBSD-src-f395a2d02c323a280083ffe5ec6a052fc677a05a.zip FreeBSD-src-f395a2d02c323a280083ffe5ec6a052fc677a05a.tar.gz |
The page queues lock is no longer required by vm_page_wakeup().
Diffstat (limited to 'sys/vm')
-rw-r--r-- | sys/vm/swap_pager.c | 4 | ||||
-rw-r--r-- | sys/vm/vm_fault.c | 6 | ||||
-rw-r--r-- | sys/vm/vm_glue.c | 4 | ||||
-rw-r--r-- | sys/vm/vm_kern.c | 2 |
4 files changed, 8 insertions, 8 deletions
diff --git a/sys/vm/swap_pager.c b/sys/vm/swap_pager.c index ce775f8..85ea18e 100644 --- a/sys/vm/swap_pager.c +++ b/sys/vm/swap_pager.c @@ -1594,8 +1594,8 @@ swp_pager_force_pagein(vm_object_t object, vm_pindex_t pindex) vm_page_lock_queues(); vm_page_activate(m); vm_page_dirty(m); - vm_page_wakeup(m); vm_page_unlock_queues(); + vm_page_wakeup(m); vm_pager_page_unswapped(m); return; } @@ -1606,8 +1606,8 @@ swp_pager_force_pagein(vm_object_t object, vm_pindex_t pindex) vm_page_lock_queues(); vm_page_dirty(m); vm_page_dontneed(m); - vm_page_wakeup(m); vm_page_unlock_queues(); + vm_page_wakeup(m); vm_pager_page_unswapped(m); } diff --git a/sys/vm/vm_fault.c b/sys/vm/vm_fault.c index 210c5bc..d62f3c7 100644 --- a/sys/vm/vm_fault.c +++ b/sys/vm/vm_fault.c @@ -133,8 +133,8 @@ struct faultstate { static inline void release_page(struct faultstate *fs) { - vm_page_lock_queues(); vm_page_wakeup(fs->m); + vm_page_lock_queues(); vm_page_deactivate(fs->m); vm_page_unlock_queues(); fs->m = NULL; @@ -914,8 +914,8 @@ readrest: } else { vm_page_activate(fs.m); } - vm_page_wakeup(fs.m); vm_page_unlock_queues(); + vm_page_wakeup(fs.m); /* * Unlock everything, and return @@ -1198,8 +1198,8 @@ vm_fault_copy_entry(dst_map, src_map, dst_entry, src_entry) * Mark it no longer busy, and put it on the active list. */ vm_page_activate(dst_m); - vm_page_wakeup(dst_m); vm_page_unlock_queues(); + vm_page_wakeup(dst_m); } VM_OBJECT_UNLOCK(dst_object); } diff --git a/sys/vm/vm_glue.c b/sys/vm/vm_glue.c index 62894cb..2f90acf 100644 --- a/sys/vm/vm_glue.c +++ b/sys/vm/vm_glue.c @@ -272,8 +272,8 @@ vm_imgact_hold_page(vm_object_t object, vm_ooffset_t offset) } vm_page_lock_queues(); vm_page_hold(m); - vm_page_wakeup(m); vm_page_unlock_queues(); + vm_page_wakeup(m); out: VM_OBJECT_UNLOCK(object); return (m); @@ -456,8 +456,8 @@ vm_thread_swapin(struct thread *td) ma[i] = m; vm_page_lock_queues(); vm_page_wire(m); - vm_page_wakeup(m); vm_page_unlock_queues(); + vm_page_wakeup(m); } VM_OBJECT_UNLOCK(ksobj); pmap_qenter(td->td_kstack, ma, pages); diff --git a/sys/vm/vm_kern.c b/sys/vm/vm_kern.c index 86d1f12..c91dc48 100644 --- a/sys/vm/vm_kern.c +++ b/sys/vm/vm_kern.c @@ -403,8 +403,8 @@ retry: pmap_enter(kernel_pmap, addr + i, m, VM_PROT_ALL, 1); vm_page_lock_queues(); vm_page_flag_set(m, PG_WRITEABLE | PG_REFERENCED); - vm_page_wakeup(m); vm_page_unlock_queues(); + vm_page_wakeup(m); } VM_OBJECT_UNLOCK(kmem_object); vm_map_unlock(map); |