diff options
author | alc <alc@FreeBSD.org> | 2003-04-26 18:33:18 +0000 |
---|---|---|
committer | alc <alc@FreeBSD.org> | 2003-04-26 18:33:18 +0000 |
commit | 373b18b5c3e31cb4f3cb8521afee7c1c65ef6143 (patch) | |
tree | 4ade157b5f3c66ff8728aec9733627e223572d47 /sys/kern/vfs_subr.c | |
parent | 2b96da3888be4bbee530605fb5c59983451840bd (diff) | |
download | FreeBSD-src-373b18b5c3e31cb4f3cb8521afee7c1c65ef6143.zip FreeBSD-src-373b18b5c3e31cb4f3cb8521afee7c1c65ef6143.tar.gz |
- Convert vm_object_pip_wait() from using tsleep() to msleep().
- Make vm_object_pip_sleep() static.
- Lock the vm_object when performing vm_object_pip_wait().
Diffstat (limited to 'sys/kern/vfs_subr.c')
-rw-r--r-- | sys/kern/vfs_subr.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index f63e5ca..26eb154 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1169,7 +1169,9 @@ vinvalbuf(vp, flags, cred, td, slpflag, slptimeo) } VI_UNLOCK(vp); if (VOP_GETVOBJECT(vp, &object) == 0) { + VM_OBJECT_LOCK(object); vm_object_pip_wait(object, "vnvlbx"); + VM_OBJECT_UNLOCK(object); } VI_LOCK(vp); } while (vp->v_numoutput > 0); |