diff options
author | dg <dg@FreeBSD.org> | 1995-05-12 04:24:53 +0000 |
---|---|---|
committer | dg <dg@FreeBSD.org> | 1995-05-12 04:24:53 +0000 |
commit | d1d32f6e2632ba42ab38d5abc63b6c07c61327b8 (patch) | |
tree | 9b5a68964b7ec61bbb6baff975d9aa66a3e753ec | |
parent | 5cfbbcea82fbc95772d96919272cce40e0881035 (diff) | |
download | FreeBSD-src-d1d32f6e2632ba42ab38d5abc63b6c07c61327b8.zip FreeBSD-src-d1d32f6e2632ba42ab38d5abc63b6c07c61327b8.tar.gz |
Increased ratio of allowed vnodes on freelist to 1/4th of the total. This
is more representative of worst case situations of 4 files/directory. (If
that last sentence doesn't make any sense, I'm not surprised. It's rather
compilcated how this all fits together....).
This should fix a problem that Ed Hudson has been complaining about where
directories with lots of symlinks could cause excessive disk I/O.
-rw-r--r-- | sys/kern/vfs_export.c | 6 | ||||
-rw-r--r-- | sys/kern/vfs_subr.c | 6 |
2 files changed, 6 insertions, 6 deletions
diff --git a/sys/kern/vfs_export.c b/sys/kern/vfs_export.c index f6672bc..0998a81 100644 --- a/sys/kern/vfs_export.c +++ b/sys/kern/vfs_export.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)vfs_subr.c 8.13 (Berkeley) 4/18/94 - * $Id: vfs_subr.c,v 1.27 1995/04/09 06:02:46 davidg Exp $ + * $Id: vfs_subr.c,v 1.28 1995/04/16 11:33:33 davidg Exp $ */ /* @@ -333,10 +333,10 @@ getnewvnode(tag, mp, vops, vpp) * is a silly thing to do. * 2. we havn't filled our pool yet * We don't want to trash the incore (VM-)vnodecache. - * 3. if less that 1/16th of our vnodes are free. + * 3. if less that 1/4th of our vnodes are free. * We don't want to trash the namei cache either. */ - if (freevnodes < (numvnodes >> 4) || + if (freevnodes < (numvnodes >> 2) || numvnodes < desiredvnodes || vp == NULL) { vp = (struct vnode *) malloc((u_long) sizeof *vp, diff --git a/sys/kern/vfs_subr.c b/sys/kern/vfs_subr.c index f6672bc..0998a81 100644 --- a/sys/kern/vfs_subr.c +++ b/sys/kern/vfs_subr.c @@ -36,7 +36,7 @@ * SUCH DAMAGE. * * @(#)vfs_subr.c 8.13 (Berkeley) 4/18/94 - * $Id: vfs_subr.c,v 1.27 1995/04/09 06:02:46 davidg Exp $ + * $Id: vfs_subr.c,v 1.28 1995/04/16 11:33:33 davidg Exp $ */ /* @@ -333,10 +333,10 @@ getnewvnode(tag, mp, vops, vpp) * is a silly thing to do. * 2. we havn't filled our pool yet * We don't want to trash the incore (VM-)vnodecache. - * 3. if less that 1/16th of our vnodes are free. + * 3. if less that 1/4th of our vnodes are free. * We don't want to trash the namei cache either. */ - if (freevnodes < (numvnodes >> 4) || + if (freevnodes < (numvnodes >> 2) || numvnodes < desiredvnodes || vp == NULL) { vp = (struct vnode *) malloc((u_long) sizeof *vp, |