git: kernel - Add vm_page_need_commit() and vm_page_clear_commit()
Matthew Dillon
dillon at crater.dragonflybsd.org
Tue Jan 31 20:57:52 PST 2012
commit 9bf025db03b34510639b4e18981ab794dce39764
Author: Matthew Dillon <dillon at apollo.backplane.com>
Date: Tue Jan 31 20:41:57 2012 -0800
kernel - Add vm_page_need_commit() and vm_page_clear_commit()
* Add vm_page_need_commit() and vm_page_clear_commit(). This controls the
PG_NEED_COMMIT flag on individual VM pages.
When set a clean VM page cannot be reused and is still subject to
flushing by the pageout daemon.
* Refactor buwrite() to use the new mechanism instead of dirtying the
pages underlying the buffer.
* This allows the normal page and buffer flushing mechanism to operate
even in situations where the VM page is also the nominal backing store
for the data (as in tmpfs).
* Will be used by tmpfs.
Summary of changes:
sys/kern/uipc_syscalls.c | 4 ++-
sys/kern/vfs_bio.c | 18 ++++++++++----
sys/vm/vm_contig.c | 15 ++++++-----
sys/vm/vm_fault.c | 3 +-
sys/vm/vm_object.c | 16 ++++++++-----
sys/vm/vm_page.c | 56 +++++++++++++++++++++++++++++++++------------
sys/vm/vm_page.h | 3 ++
sys/vm/vm_pageout.c | 13 ++++++----
sys/vm/vnode_pager.c | 2 +-
9 files changed, 89 insertions(+), 41 deletions(-)
http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/9bf025db03b34510639b4e18981ab794dce39764
--
DragonFly BSD source repository
More information about the Commits
mailing list