cvs commit: src/sys/kern vfs_subr.c

[ Available lists | Index of cvs-all | Month of Dec 2002 | Week of 29 Dec 2002 | Raw email | View thread | Wrap long lines | Reply | Tag ]
From
Poul-Henning Kamp <phk@FreeBSD.org>
Date
29 Dec 2002 02:39:07
Subject
cvs commit: src/sys/kern vfs_subr.c
Message-ID
200212291039.gBTAd5u6013722@repoman.freebsd.org


[ Hide this part ]
phk         2002/12/29 02:39:05 PST

Modified files:
sys/kern vfs_subr.c
Log:
Vnodes pull in 800-900 bytes these days, all things counted, so we need
to treat desiredvnodes much more like a limit than as a vague concept.

On a 2GB RAM machine where desired vnodes is 130k, we run out of
kmem_map space when we hit about 190k vnodes.

If we wake up the vnode washer in getnewvnode(), sleep until it is done,
so that it has a chance to offer us a washed vnode. If we don't sleep
here we'll just race ahead and allocate yet a vnode which will never
get freed.

In the vnodewasher, instead of doing 10 vnodes per mountpoint per
rotation, do 10% of the vnodes distributed evenly across the
mountpoints.

Revision Changes Path
1.424 +15 -5 src/sys/kern/vfs_subr.c

To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe cvs-all" in the body of the message



Elapsed time: 0.075 seconds