diff options
author | Christian Weisgerber <naddy@cvs.openbsd.org> | 2003-05-13 09:31:07 +0000 |
---|---|---|
committer | Christian Weisgerber <naddy@cvs.openbsd.org> | 2003-05-13 09:31:07 +0000 |
commit | 896aa8deb7b5b3df09f6feb7e63e222516b006bf (patch) | |
tree | ff9d015878bd0fd03d9dbff558a0236cc6ba9e05 /sys/kern | |
parent | 34b32d5ee97129dbcad1bc25d32d8d0e3947bbf7 (diff) |
Back out previous change that causes "vnode table full" for large-scale
file operations.
Diffstat (limited to 'sys/kern')
-rw-r--r-- | sys/kern/vfs_subr.c | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index 3e4d812f7da..72c730abcb3 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -1,4 +1,4 @@ -/* $OpenBSD: vfs_subr.c,v 1.92 2003/05/13 02:30:01 tedu Exp $ */ +/* $OpenBSD: vfs_subr.c,v 1.93 2003/05/13 09:31:06 naddy Exp $ */ /* $NetBSD: vfs_subr.c,v 1.53 1996/04/22 01:39:13 christos Exp $ */ /* @@ -415,6 +415,8 @@ getnewvnode(tag, mp, vops, vpp) for (vp = TAILQ_FIRST(listhd); vp != NULLVP; vp = TAILQ_NEXT(vp, v_freelist)) { if (simple_lock_try(&vp->v_interlock)) { + if ((vp->v_flag & VLAYER) == 0) + break; if (VOP_ISLOCKED(vp) == 0) break; else |