aboutsummaryrefslogtreecommitdiff
path: root/sys/vm/vm_page.h
diff options
context:
space:
mode:
authorAlan Cox <alc@FreeBSD.org>2009-05-13 05:39:39 +0000
committerAlan Cox <alc@FreeBSD.org>2009-05-13 05:39:39 +0000
commit1c1b26f276f85b086bc6e579c452e52231c234ac (patch)
treede540785bb7f52f8c0b6353b22a06e54fff788d1 /sys/vm/vm_page.h
parentb1f26c738c3a2433f1759099fceb31d741e4f462 (diff)
downloadsrc-1c1b26f276f85b086bc6e579c452e52231c234ac.tar.gz
src-1c1b26f276f85b086bc6e579c452e52231c234ac.zip
Eliminate page queues locking from bufdone_finish() through the
following changes: Rename vfs_page_set_valid() to vfs_page_set_validclean() to reflect what this function actually does. Suggested by: tegge Introduce a new version of vfs_page_set_valid() that does no more than what the function's name implies. Specifically, it does not update the page's dirty mask, and thus it does not require the page queues lock to be held. Update two of the three callers to the old vfs_page_set_valid() to call vfs_page_set_validclean() instead because they actually require the page's dirty mask to be cleared. Introduce vm_page_set_valid(). Reviewed by: tegge
Notes
Notes: svn path=/head/; revision=192034
Diffstat (limited to 'sys/vm/vm_page.h')
-rw-r--r--sys/vm/vm_page.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/sys/vm/vm_page.h b/sys/vm/vm_page.h
index 7f996ea9bfab..8bbbaee192f4 100644
--- a/sys/vm/vm_page.h
+++ b/sys/vm/vm_page.h
@@ -321,6 +321,7 @@ vm_page_t vm_page_lookup (vm_object_t, vm_pindex_t);
void vm_page_remove (vm_page_t);
void vm_page_rename (vm_page_t, vm_object_t, vm_pindex_t);
void vm_page_requeue(vm_page_t m);
+void vm_page_set_valid(vm_page_t m, int base, int size);
void vm_page_sleep(vm_page_t m, const char *msg);
vm_page_t vm_page_splay(vm_pindex_t, vm_page_t);
vm_offset_t vm_page_startup(vm_offset_t vaddr);