diff options
| author | yamt <yamt@NetBSD.org> | 2006-10-12 10:14:20 +0000 |
|---|---|---|
| committer | yamt <yamt@NetBSD.org> | 2006-10-12 10:14:20 +0000 |
| commit | 9de1cdc8fe7dd07fb614fa971b16a4e6fed2b6a6 (patch) | |
| tree | ce3f43b06bf6040425c5238956552668d8096516 /sys/uvm/uvm_vnode.c | |
| parent | b290489c817ffcf46ce4877327e98492e88b416a (diff) | |
move some knowledge about vnode into uvm_vnode.c.
Diffstat (limited to 'sys/uvm/uvm_vnode.c')
| -rw-r--r-- | sys/uvm/uvm_vnode.c | 29 |
1 files changed, 27 insertions, 2 deletions
diff --git a/sys/uvm/uvm_vnode.c b/sys/uvm/uvm_vnode.c index 6b0fc37aad2..23cbf138a3a 100644 --- a/sys/uvm/uvm_vnode.c +++ b/sys/uvm/uvm_vnode.c @@ -1,4 +1,4 @@ -/* $NetBSD: uvm_vnode.c,v 1.74 2006/10/12 01:32:54 christos Exp $ */ +/* $NetBSD: uvm_vnode.c,v 1.75 2006/10/12 10:14:20 yamt Exp $ */ /* * Copyright (c) 1997 Charles D. Cranor and Washington University. @@ -50,7 +50,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: uvm_vnode.c,v 1.74 2006/10/12 01:32:54 christos Exp $"); +__KERNEL_RCSID(0, "$NetBSD: uvm_vnode.c,v 1.75 2006/10/12 10:14:20 yamt Exp $"); #include "fs_nfs.h" #include "opt_uvmhist.h" @@ -501,3 +501,28 @@ uvm_vnp_zerorange(struct vnode *vp, off_t off, size_t len) len -= bytelen; } } + +boolean_t +uvn_text_p(struct uvm_object *uobj) +{ + struct vnode *vp = (struct vnode *)uobj; + + return (vp->v_flag & VEXECMAP) != 0; +} + +boolean_t +uvn_clean_p(struct uvm_object *uobj) +{ + struct vnode *vp = (struct vnode *)uobj; + + return (vp->v_flag & VONWORKLST) == 0; +} + +boolean_t +uvn_needs_writefault_p(struct uvm_object *uobj) +{ + struct vnode *vp = (struct vnode *)uobj; + + return uvn_clean_p(uobj) || + (vp->v_flag & (VWRITEMAP|VWRITEMAPDIRTY)) == VWRITEMAP; +} |
